From d96bab9b73d1afb5866aa0b6e9409403c7dab8e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eric=20M=C3=BCller?= <mueller@kip.uni-heidelberg.de> Date: Wed, 24 Jul 2024 10:12:27 +0200 Subject: [PATCH] fix: dict.update instead of | operator * allows for python@:3.8 compatibility Change-Id: Id24d73dc4c9574852cf1edc2c99d9a56da1fbb4f --- bin/yashchiki | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/bin/yashchiki b/bin/yashchiki index 4ed81924..b9a6a91c 100755 --- a/bin/yashchiki +++ b/bin/yashchiki @@ -152,7 +152,8 @@ tmpdir.mkdir(exist_ok=True, parents=True) # collection of environment variables used to configure the shell scripts' # behavior -env = { +env = os.environ.copy() +env.update({ "DOCKER_BASE_IMAGE": config["docker_base_image"], # This needs to be here because otherwise the default python # (2.7.18) will pollute the spec and lead to a conflict @@ -174,10 +175,10 @@ env = { "TMPDIR": tmpdir, "YASHCHIKI_CACHES_ROOT": args.caches_dir, "YASHCHIKI_JOBS": str(args.jobs), -} | os.environ +}) if args.build_cache_on_failure_name: - env = env | {"YASHCHIKI_BUILD_CACHE_ON_FAILURE_NAME": args.build_cache_on_failure_name} + env.update({"YASHCHIKI_BUILD_CACHE_ON_FAILURE_NAME": args.build_cache_on_failure_name}) # create directory for logs args.log_dir.mkdir(parents=True, exist_ok=True) @@ -223,14 +224,14 @@ def run(script: str, env: dict, script_args: list = []): # Temporary directory for spack temporary_directory_spack = tmpdir.joinpath('tmp_spack') temporary_directory_spack.mkdir(exist_ok=True, parents=True) -env = env | {"JOB_TMP_SPACK": temporary_directory_spack} +env.update({"JOB_TMP_SPACK": temporary_directory_spack}) # make job temp folder writable for all users (i.e., spack) os.chmod(temporary_directory_spack, 0o777) # Directory for (temporary) spack configuration temporary_directory_spack_config = tmpdir.joinpath('spack_config') temporary_directory_spack_config.mkdir(exist_ok=True, parents=True) -env = env | {"YASHCHIKI_SPACK_CONFIG": temporary_directory_spack_config} +env.update({"YASHCHIKI_SPACK_CONFIG": temporary_directory_spack_config}) # make spack config directory readable for all users (i.e., spack) temporary_directory_spack_config.chmod(0o755) @@ -271,7 +272,7 @@ if args.recipe_filename is not None: recipe_filename = args.recipe_filename else: recipe_filename = tmpdir.joinpath("recipe.def") -env = env | {"YASHCHIKI_RECIPE_PATH": recipe_filename} +env.update({"YASHCHIKI_RECIPE_PATH": recipe_filename}) # meta data directory defaults to temporary folder if args.meta_dir is not None: @@ -279,7 +280,7 @@ if args.meta_dir is not None: else: meta_dir = tmpdir.joinpath("meta") meta_dir.mkdir(parents=True) -env = env | {"YASHCHIKI_META_DIR": meta_dir} +env.update({"YASHCHIKI_META_DIR": meta_dir}) run("lib/yashchiki/create_caches.sh", env) run("lib/yashchiki/fetch.sh", env) -- GitLab