def make_temp_env(*packages, **kwargs): name = kwargs.pop("name", None) use_restricted_unicode = kwargs.pop("use_restricted_unicode", False) prefix = kwargs.pop("prefix", None) or _get_temp_prefix( name=name, use_restricted_unicode=use_restricted_unicode) clean_prefix = kwargs.pop("clean_prefix", None) if clean_prefix: if os.path.exists(prefix): rm_rf(prefix) if not isdir(prefix): make_temp_prefix(name, use_restricted_unicode, prefix) with disable_logger("fetch"), disable_logger("dotupdate"): try: # try to clear any config that's been set by other tests # CAUTION :: This does not partake in the context stack management code # of env_{var,vars,unmodified} and, when used in conjunction # with that code, this *must* be called first. reset_context([os.path.join(prefix + os.sep, "condarc")]) run_command(Commands.CREATE, prefix, *packages, **kwargs) yield prefix finally: if "CONDA_TEST_SAVE_TEMPS" not in os.environ: rmtree(prefix, ignore_errors=True) else: log.warning( "CONDA_TEST_SAVE_TEMPS :: retaining make_temp_env {}". format(prefix))
def make_temp_env(*packages, **kwargs): prefix = kwargs.pop('prefix', None) or make_temp_prefix() assert isdir(prefix), prefix with disable_logger('fetch'), disable_logger('dotupdate'): try: # try to clear any config that's been set by other tests reset_context([os.path.join(prefix+os.sep, 'condarc')]) run_command(Commands.CREATE, prefix, *packages) yield prefix finally: rmtree(prefix, ignore_errors=True)
def make_temp_env(*packages, **kwargs): prefix = kwargs.pop('prefix', None) or make_temp_prefix() with stderr_log_level(DEBUG, 'conda'), stderr_log_level(DEBUG, 'requests'): with disable_logger('fetch'), disable_logger('dotupdate'): try: # try to clear any config that's been set by other tests reset_context([join(prefix, 'condarc')]) run_command(Commands.CREATE, prefix, *packages) yield prefix finally: rmtree(prefix, ignore_errors=True)