INNER CODE UNIT · Python
resolve_manager
PKU-EMBL/BASALT · BASALT_setup_China_mainland.py:227
def resolve_manager(args: argparse.Namespace) -> Tuple[str, str]:
"""Choose micromamba, mamba, or conda in that order."""
if args.manager_path:
executable = str(Path(args.manager_path).expanduser().resolve())
if not Path(executable).is_file():
raise InstallationError("--manager-path does not exist: {}".format(executable))
kind = infer_manager(executable) if args.manager == "auto" else args.manager
return kind, executable
requested = ["micromamba", "mamba", "conda"] if args.manager == "auto" else [args.manager]
for name in requested:
executable = shutil.which(name)
if executable:
return name, executable
if (
name == "micromamba"
and args.bootstrap_micromamba
and args.manager in ("auto", "micromamba")