def run(self): sorted_pkgs = dag_run(self.__dag) software_root = self.__config_version.config['software_root'] release_version = self.__config_version.config['version'] env = Env() env.clean() env.set_release(software_root, release_version) global_env = self.__config_release.get('setting', {}).get('global_env', {}) new_global_env = {} for k, v in global_env.items(): new_global_env[k] = v.format(**self.__config_version.config) env.set_global(new_global_env) path_def = self.__config_release.get('setting', {}).get('path_def', {}) for pkg in sorted_pkgs: pkg_info = self.__pkg_mgr.package_info(pkg) env.set_package(path_def, pkg_info) env_change = env.env_change() _logger.info('From software root: {0}'.format(software_root)) _logger.info('Using version: {0}'.format(release_version)) return env_change
def execute(self, config_version, shell): shell.clear_script() env = Env() env.clean() set_env, unset_env = env.env_change() for e in unset_env: shell.unset_env(e) for k, v in set_env.items(): shell.set_env(k, v) click.echo(shell.script, nl=False)
def default_version(self, shell=None): try: info = Info() default_version = info.default_version if default_version: config_version = ConfigVersion(config_user, default_version) config_release = ConfigRelease(config_version) obj = BsmUse(config_user, config_version, config_release) set_env, unset_env = obj.run() else: env = Env() env.clean() set_env, unset_env = env.env_change() for e in unset_env: shell.unset_env(e) for k, v in set_env.items(): shell.set_env(k, v) except Exception as e: _logger.warn('Cat not load default version: {0}'.format(e))