import os import sys import core.common_defs as defs import core.cbdm_repositories as repos from core import sys_config from core.Dependencies.library_module import LibraryModule from core.BasicLibs import vcs, fs help_message = defs.load_message('cbdm_module_help') def exec_command(): if len(sys.argv) < 3: print(help_message) sys.exit(1) command = sys.argv[2] modules = sys.argv[3::] if command == 'install': for module_name in modules: if LibraryModule.module_exists(module_name): print('Module "{}" already in system. Skipping'.format(module_name)) continue module_params = repos.find_module(module_name) if not bool(module_params): print('Module "{}" wasnt\'t found'.format(module_name)) continue module_repo = module_params['repo'] module_dir = sys_config.modules_location.format(module_name=module_name) vcs.git_clone(module_repo, module_dir) print('----- Module {} was successfully installed'.format(module_name)) sys.exit(0)
import sys import config from core.CmakeGenerator import CmakeGeneratorFromDeps as CMakeGenerator import core.cbdm_repositories as repos import core.cbdm_modules as modules import core.common_defs as defs from core.Dependencies.dependencies import Dependencies from core.env_project_install import project_install_to_env help_message = defs.load_message('help') if len(sys.argv) > 1: command = sys.argv[1] if command == 'module': modules.exec_command() sys.exit(0) elif command == 'repos': repos.exec_command() sys.exit(0) elif command == 'build': pass else: print(help_message) sys.exit(0) dependencies = Dependencies() dependencies.build_dependencies() project_install_to_env() cmakeBuilder = CMakeGenerator(config.directories['solutionDir'], config.projectName,
import os import sys import urllib.request as net import json import core.common_defs as defs help_message = defs.load_message('cbdm_respositories_help') import argparse import config parser = argparse.ArgumentParser(description='Process some integers.') repos_filename = os.path.join(config.directories['project_dir'], 'core', 'Dependencies', 'repositories.json') def find_module(module_name): repos = get_repos() for repo in repos: try: repo_stream = net.urlopen(repo) repo_modules = json.loads(repo_stream.read().decode()) if module_name in repo_modules and 'repo' in repo_modules[module_name]: return repo_modules[module_name] except: print('Problems with repo: ' + repo) return False def get_repos(): try: