From adba931c74a3c00ec88a38c49ac3ad85fb35cae4 Mon Sep 17 00:00:00 2001 From: Xylar Asay-Davis Date: Wed, 24 Jan 2024 23:15:29 +0100 Subject: [PATCH 1/2] Add alphaBetaLab submodule --- .gitmodules | 3 +++ alphaBetaLab | 1 + 2 files changed, 4 insertions(+) create mode 160000 alphaBetaLab diff --git a/.gitmodules b/.gitmodules index e3f3b78a4e..c907397dbc 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "jigsaw-python"] path = jigsaw-python url = git@github.com:dengwirda/jigsaw-python.git +[submodule "alphaBetaLab"] + path = alphaBetaLab + url = git@github.com:xylar/alphaBetaLab.git diff --git a/alphaBetaLab b/alphaBetaLab new file mode 160000 index 0000000000..0b96c3d83b --- /dev/null +++ b/alphaBetaLab @@ -0,0 +1 @@ +Subproject commit 0b96c3d83b89092ca346cce193f11f65dbd0dc1b From d3cf3ff9b393afa7065e9b050ac26026525281be Mon Sep 17 00:00:00 2001 From: Xylar Asay-Davis Date: Wed, 24 Jan 2024 23:15:45 +0100 Subject: [PATCH 2/2] Optionally, install alphaBetaLab --- conda/bootstrap.py | 16 ++++++++++++++-- conda/shared.py | 4 ++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/conda/bootstrap.py b/conda/bootstrap.py index c27d7dae4b..b0ad76ef4c 100755 --- a/conda/bootstrap.py +++ b/conda/bootstrap.py @@ -244,7 +244,8 @@ def get_env_setup(args, config, machine, compiler, mpi, env_type, source_path, def build_conda_env(env_type, recreate, mpi, conda_mpi, version, python, source_path, conda_template_path, conda_base, env_name, env_path, activate_base, use_local, - local_conda_build, logger, local_mache, update_jigsaw): + local_conda_build, logger, local_mache, update_jigsaw, + with_alphabetalab): if env_type != 'dev': install_miniforge(conda_base, activate_base, logger) @@ -327,6 +328,17 @@ def build_conda_env(env_type, recreate, mpi, conda_mpi, version, print(f'{env_name} already exists') if env_type == 'dev': + if with_alphabetalab: + print('Installing AlphaBetaLab\n') + commands = \ + f'{activate_env} && ' \ + f'cd {source_path} && ' \ + f'git submodule update --init alphaBetaLab &&' \ + f'cd {source_path}/alphaBetaLab&& ' \ + f'conda install -y --file dev-spec.txt && ' \ + f'python -m pip install --no-deps -e .' + check_call(commands, logger=logger) + if recreate or update_jigsaw: # remove conda jigsaw and jigsaw-python t0 = time.time() @@ -1035,7 +1047,7 @@ def main(): # noqa: C901 python, source_path, conda_template_path, conda_base, conda_env_name, conda_env_path, activate_base, args.use_local, args.local_conda_build, logger, local_mache, - args.update_jigsaw) + args.update_jigsaw, args.with_alphabetalab) if local_mache: print('Install local mache\n') diff --git a/conda/shared.py b/conda/shared.py index b24248a56d..702794ec13 100644 --- a/conda/shared.py +++ b/conda/shared.py @@ -69,6 +69,10 @@ def parse_args(bootstrap): help="If this flag is included, OPENMP=false will " "be added to the load script. By default, MPAS " "builds will be with OpenMP (OPENMP=true).") + parser.add_argument("--with_alphabetalab", dest="with_alphabetalab", + action='store_true', + help="Whether to install alphaBetaLab from its " + "submodule.") parser.add_argument("--verbose", dest="verbose", action='store_true', help="Print all output to the terminal, rather than "