From bafc0645f215b3b2bd330eeb37cd214f296d6257 Mon Sep 17 00:00:00 2001 From: Alan O'Cais Date: Tue, 24 Feb 2026 16:11:22 +0100 Subject: [PATCH 1/4] Stick with cc8.0 for EB4, where 9.0f is not understood --- .github/workflows/docs.yml | 4 +++- .github/workflows/prs.yml | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 01a0e27..078df04 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -36,13 +36,15 @@ jobs: # Set CPU override for the stack to query export EESSI_ARCHDETECT_OPTIONS_OVERRIDE="x86_64/intel/icelake" # Set GPU overrides for the stack to query (we have no GPU, so also override the GPU check) - export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" export EESSI_OVERRIDE_GPU_CHECK=1 # First do 2023.06 for EB 4 + export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc80" # Stick to 8.0 for EB4 as the options for 9.0 are not understood there ( module load EESSI/2023.06 && module load EasyBuild/4 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & # then 2023.06 for EB 5 + export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" ( module load EESSI/2023.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & # then 2025.06 for EB 5 (does not have EB4) + export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" ( module load EESSI/2025.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2025.06 ) & # Merge all these results together wait diff --git a/.github/workflows/prs.yml b/.github/workflows/prs.yml index da0d590..a3d67da 100644 --- a/.github/workflows/prs.yml +++ b/.github/workflows/prs.yml @@ -31,7 +31,7 @@ jobs: # Set CPU override for the stack to query export EESSI_ARCHDETECT_OPTIONS_OVERRIDE="x86_64/intel/icelake" # Set GPU overrides for the stack to query (we have no GPU, so also override the GPU check) - export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" + export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc80" export EESSI_OVERRIDE_GPU_CHECK=1 # Only do 2023.06 for EB 5 since this is just a test ( module load EESSI/2023.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & From ad28a10740d2dd409e45f3c22340396b01a698e3 Mon Sep 17 00:00:00 2001 From: Alan O'Cais Date: Tue, 24 Feb 2026 16:16:03 +0100 Subject: [PATCH 2/4] Don't include accel/ in the gpu_arch --- scripts/process_eessi_software_metadata.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/process_eessi_software_metadata.py b/scripts/process_eessi_software_metadata.py index dfe23d2..e2042a2 100644 --- a/scripts/process_eessi_software_metadata.py +++ b/scripts/process_eessi_software_metadata.py @@ -103,7 +103,8 @@ def get_software_information_by_filename(file_metadata, original_path=None, tool accel_substituted_modulefile = substituted_modulefile.replace(detected_accel_arch, accel_arch) found = subprocess.run(["grep", "-q", accel_substituted_modulefile, substituted_spider_cache]).returncode == 0 if found: - base_version_dict["gpu_arch"][arch].append(accel_arch) + # Let's not include the "accel/" part of the accel_arch + base_version_dict["gpu_arch"][arch].append(accel_arch.replace("accel/", "", 1)) else: print(f"No module {accel_substituted_modulefile}...not adding software for architecture {arch}/{accel_arch}") continue From 70e5016ec381c66d5a297eefb2f651a418bdefab Mon Sep 17 00:00:00 2001 From: Alan O'Cais Date: Tue, 24 Feb 2026 16:17:59 +0100 Subject: [PATCH 3/4] Tweak CI --- .github/workflows/docs.yml | 2 +- .github/workflows/prs.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 078df04..58e9034 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -38,7 +38,7 @@ jobs: # Set GPU overrides for the stack to query (we have no GPU, so also override the GPU check) export EESSI_OVERRIDE_GPU_CHECK=1 # First do 2023.06 for EB 4 - export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc80" # Stick to 8.0 for EB4 as the options for 9.0 are not understood there + export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc80" # Stick to 8.0 for EB4 as options for 9.0 set by EESSI-extend are not understood there ( module load EESSI/2023.06 && module load EasyBuild/4 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & # then 2023.06 for EB 5 export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" diff --git a/.github/workflows/prs.yml b/.github/workflows/prs.yml index a3d67da..da0d590 100644 --- a/.github/workflows/prs.yml +++ b/.github/workflows/prs.yml @@ -31,7 +31,7 @@ jobs: # Set CPU override for the stack to query export EESSI_ARCHDETECT_OPTIONS_OVERRIDE="x86_64/intel/icelake" # Set GPU overrides for the stack to query (we have no GPU, so also override the GPU check) - export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc80" + export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" export EESSI_OVERRIDE_GPU_CHECK=1 # Only do 2023.06 for EB 5 since this is just a test ( module load EESSI/2023.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & From 64f317f44401c1cef181de74f18fbb2529adf007 Mon Sep 17 00:00:00 2001 From: Alan O'Cais Date: Tue, 24 Feb 2026 16:28:43 +0100 Subject: [PATCH 4/4] Catch failures in background jobs --- .github/workflows/docs.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 58e9034..b2f7278 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -40,14 +40,23 @@ jobs: # First do 2023.06 for EB 4 export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc80" # Stick to 8.0 for EB4 as options for 9.0 set by EESSI-extend are not understood there ( module load EESSI/2023.06 && module load EasyBuild/4 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & + pid1=$! # then 2023.06 for EB 5 export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" ( module load EESSI/2023.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2023.06 ) & + pid2=$! # then 2025.06 for EB 5 (does not have EB4) export EESSI_ACCELERATOR_TARGET_OVERRIDE="accel/nvidia/cc90" ( module load EESSI/2025.06 && module load EasyBuild/5 && module load EESSI-extend && python scripts/generate_data_files.py --eessi-version=2025.06 ) & + pid3=$! + wait $pid1 || fail=1 + wait $pid2 || fail=2 + wait $pid3 || fail=3 + if [ $fail -ne 0 ]; then + echo "One or more jobs failed (at least job $fail)" + exit 1 + fi # Merge all these results together - wait python scripts/merge_data_files.py out.yaml eessi*.yaml mv out.yaml docs/data/eessi_software_metadata.yaml # Generate json data files and markdown index/description for them