Esempio n. 1
0
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)
Esempio n. 2
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,
Esempio n. 3
0
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: