Skip to content

Make the use of the required keyword conditional on the EB version#179

Merged
ocaisa merged 3 commits intoEESSI:mainfrom
casparvl:fix_hooks_bug
Mar 11, 2026
Merged

Make the use of the required keyword conditional on the EB version#179
ocaisa merged 3 commits intoEESSI:mainfrom
casparvl:fix_hooks_bug

Conversation

@casparvl
Copy link
Contributor

No description provided.

Caspar van Leeuwen added 2 commits March 11, 2026 14:07
Copy link
Member

@ocaisa ocaisa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, tested via

{EESSI/2023.06} [ocaisa@aarch64-neoverse-v1-node1 caspar_test]$ module list

Currently Loaded Modules:
  1) EESSI/2023.06   2) EasyBuild/4.9.4   3) EESSI-extend/2023.06-easybuild


{EESSI/2023.06} [ocaisa@aarch64-neoverse-v1-node1 caspar_test]$ eb -x CUDA-12.1.1.eb
== Temporary log file in case of crash /tmp/eb-pvv0n_a9/easybuild-99yft85z.log
file /tmp/eb-pvv0n_a9/fake_vsc_5gf7ewb6 removed

...
*** DRY RUN using 'EB_CUDA' easyblock (easybuild.easyblocks.cuda @ /cvmfs/software.eessi.io/versions/2023.06/software/linux/aarch64/neoverse_v1/software/EasyBuild/4.9.4/lib/python3.11/site-packages/easybuild/easyblocks/c/cuda.py) ***

== building and installing CUDA/12.1.1...
  >> installation prefix: /tmp/eb-pvv0n_a9/__ROOT__/home/ocaisa/eessi/versions/2023.06/software/linux/aarch64/neoverse_v1/software/CUDA/12.1.1
fetching files... [DRY RUN]

== Running pre-fetch hook...
directory /home/ocaisa/eessi/versions/2023.06/software/linux/aarch64/neoverse_v1/software/.locks/_tmp_eb-pvv0n_a9___ROOT___home_ocaisa_eessi_versions_2023.06_software_linux_aarch64_neoverse_v1_software_CUDA_12.1.1.lock removed
ERROR: Traceback (most recent call last):
  File "/cvmfs/software.eessi.io/versions/2023.06/software/linux/aarch64/neoverse_v1/software/EasyBuild/4.9.4/lib/python3.11/site-packages/easybuild/main.py", line 137, in build_and_install_software
    (ec_res['success'], app_log, err) = build_and_install_one(ec, init_env)
                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/cvmfs/software.eessi.io/versions/2023.06/software/linux/aarch64/neoverse_v1/software/EasyBuild/4.9.4/lib/python3.11/site-packages/easybuild/framework/easyblock.py", line 4276, in build_and_install_one
    result = app.run_all_steps(run_test_cases=run_test_cases)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/cvmfs/software.eessi.io/versions/2023.06/software/linux/aarch64/neoverse_v1/software/EasyBuild/4.9.4/lib/python3.11/site-packages/easybuild/framework/easyblock.py", line 4155, in run_all_steps
    self.run_step(step_name, step_methods)
  File "/cvmfs/software.eessi.io/versions/2023.06/software/linux/aarch64/neoverse_v1/software/EasyBuild/4.9.4/lib/python3.11/site-packages/easybuild/framework/easyblock.py", line 3965, in run_step
    run_hook(step, self.hooks, pre_step_hook=True, args=[self])
  File "/cvmfs/software.eessi.io/versions/2023.06/software/linux/aarch64/neoverse_v1/software/EasyBuild/4.9.4/lib/python3.11/site-packages/easybuild/tools/hooks.py", line 240, in run_hook
    res = hook(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^
  File "/cvmfs/software.eessi.io/versions/2023.06/init/easybuild/eb_hooks.py", line 686, in pre_fetch_hook
    pre_fetch_hook_unsupported_modules(self, *args, **kwargs)
  File "/cvmfs/software.eessi.io/versions/2023.06/init/easybuild/eb_hooks.py", line 824, in pre_fetch_hook_unsupported_modules
    if is_unsupported_module(self):
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/cvmfs/software.eessi.io/versions/2023.06/init/easybuild/eb_hooks.py", line 791, in is_unsupported_module
    cuda_ccs_string = self.cfg.get_cuda_cc_template_value('cuda_compute_capabilities', required=False)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: EasyConfig.get_cuda_cc_template_value() got an unexpected keyword argument 'required'

{EESSI/2023.06} [ocaisa@aarch64-neoverse-v1-node1 caspar_test]$ eb -x --hooks ./eb_hooks.py CUDA-12.1.1.eb
== Temporary log file in case of crash /tmp/eb-5c66lpr2/easybuild-c83q2qke.log
file /tmp/eb-5c66lpr2/fake_vsc_7d1c1juv removed

...

== processing EasyBuild easyconfig 

...

== Running post-module hook...
permissions... [DRY RUN]

[permissions_step method]

packaging... [DRY RUN]

[package_step method]

directory /home/ocaisa/eessi/versions/2023.06/software/linux/aarch64/neoverse_v1/software/.locks/_tmp_eb-5c66lpr2___ROOT___home_ocaisa_eessi_versions_2023.06_software_linux_aarch64_neoverse_v1_software_CUDA_12.1.1.lock removed
== COMPLETED: Installation ended successfully (took 0 secs)

Important note: the actual build & install procedure that will be performed may diverge
(slightly) from what is outlined above, due to conditions in the easyblock which are
incorrectly handled in a dry run.
Any errors that may occur are ignored and reported as warnings, on a per-step basis.
Please be aware of this, and only use the information above for quick debugging purposes.


!!!
!!! WARNING: One or more errors were ignored, see warnings above
!!!

== Build succeeded for 1 out of 1
== Temporary log file(s) /tmp/eb-5c66lpr2/easybuild-c83q2qke.log* have been removed.
== Temporary directory /tmp/eb-5c66lpr2 has been removed.
{EESSI/2023.06} [ocaisa@aarch64-neoverse-v1-node1 caspar_test]$

@ocaisa
Copy link
Member

ocaisa commented Mar 11, 2026

bot: build repo:eessi.io-2023.06-software instance:eessi-bot-deucalion for:arch=aarch64/a64fx
bot: build repo:eessi.io-2025.06-software instance:eessi-bot-deucalion for:arch=aarch64/a64fx

@eessi-bot-deucalion
Copy link

eessi-bot-deucalion bot commented Mar 11, 2026

New job on instance eessi-bot-deucalion for repository eessi.io-2023.06-software
Building on: a64fx
Building for: aarch64/a64fx
Job dir: /home/eessibot/new-bot/jobs/2026.03/pr_179/1029625

date job status comment
Mar 11 13:42:47 UTC 2026 submitted job id 1029625 awaits release by job manager
Mar 11 13:43:16 UTC 2026 released job awaits launch by Slurm scheduler
Mar 11 13:44:19 UTC 2026 running job 1029625 is running
Mar 11 13:53:51 UTC 2026 finished
😁 SUCCESS (click triangle for details)
Details
✅ job output file slurm-1029625.out
✅ no message matching FATAL:
✅ no message matching ERROR:
✅ no message matching FAILED:
✅ no message matching required modules missing:
✅ found message(s) matching No missing installations
✅ found message matching .tar.* created!
Artefacts
eessi-2023.06-software-linux-aarch64-a64fx-17732368050.tar.zstsize: 0 MiB (30665 bytes)
entries: 2
modules under 2023.06/software/linux/aarch64/a64fx/modules/all
no module files in tarball
software under 2023.06/software/linux/aarch64/a64fx/software
no software packages in tarball
reprod directories under 2023.06/software/linux/aarch64/a64fx/reprod
no reprod directories in tarball
other under 2023.06/software/linux/aarch64/a64fx
2023.06/init/easybuild/eb_hooks.py
2023.06/scripts/gpu_support/nvidia/install_cuda_and_libraries.sh
Mar 11 13:53:51 UTC 2026 test result
😁 SUCCESS (click triangle for details)
ReFrame Summary
[ SKIP ] ( 1/10) Skipping test: nodes in this partition only have 30720 MiB memory available (per node) according to the current ReFrame configuration, but 49152 MiB is needed
[ SKIP ] ( 2/10) Skipping test: nodes in this partition only have 30720 MiB memory available (per node) according to the current ReFrame configuration, but 49152 MiB is needed
[ SKIP ] ( 3/10) Skipping test: nodes in this partition only have 30720 MiB memory available (per node) according to the current ReFrame configuration, but 49152 MiB is needed
[ SKIP ] ( 4/10) Skipping test: nodes in this partition only have 30720 MiB memory available (per node) according to the current ReFrame configuration, but 49152 MiB is needed
[ OK ] ( 5/10) EESSI_LAMMPS_lj %device_type=cpu %module_name=LAMMPS/29Aug2024-foss-2023b-kokkos %scale=1_node /aeb2d9df @BotBuildTests:a64fx+default
P: perf: 578.178 timesteps/s (r:0, l:None, u:None)
[ OK ] ( 6/10) EESSI_LAMMPS_lj %device_type=cpu %module_name=LAMMPS/2Aug2023_update2-foss-2023a-kokkos %scale=1_node /04ff9ece @BotBuildTests:a64fx+default
P: perf: 581.763 timesteps/s (r:0, l:None, u:None)
[ OK ] ( 7/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_latency %module_name=OSU-Micro-Benchmarks/7.2-gompi-2023b %scale=1_node /15cad6c4 @BotBuildTests:a64fx+default
P: latency: 1.68 us (r:0, l:None, u:None)
[ OK ] ( 8/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_latency %module_name=OSU-Micro-Benchmarks/7.1-1-gompi-2023a %scale=1_node /6672deda @BotBuildTests:a64fx+default
P: latency: 1.71 us (r:0, l:None, u:None)
[ OK ] ( 9/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_bw %module_name=OSU-Micro-Benchmarks/7.2-gompi-2023b %scale=1_node /2a9a47b1 @BotBuildTests:a64fx+default
P: bandwidth: 8777.04 MB/s (r:0, l:None, u:None)
[ OK ] (10/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_bw %module_name=OSU-Micro-Benchmarks/7.1-1-gompi-2023a %scale=1_node /1b24ab8e @BotBuildTests:a64fx+default
P: bandwidth: 8737.88 MB/s (r:0, l:None, u:None)
[ PASSED ] Ran 6/10 test case(s) from 10 check(s) (0 failure(s), 4 skipped, 0 aborted)
Details
✅ job output file slurm-1029625.out
✅ no message matching ERROR:
✅ no message matching [\s*FAILED\s*].*Ran .* test case
Mar 11 16:15:28 UTC 2026 uploaded transfer of eessi-2023.06-software-linux-aarch64-a64fx-17732368050.tar.zst to S3 bucket succeeded

@eessi-bot-deucalion
Copy link

eessi-bot-deucalion bot commented Mar 11, 2026

New job on instance eessi-bot-deucalion for repository eessi.io-2025.06-software
Building on: a64fx
Building for: aarch64/a64fx
Job dir: /home/eessibot/new-bot/jobs/2026.03/pr_179/1029627

date job status comment
Mar 11 13:42:54 UTC 2026 submitted job id 1029627 awaits release by job manager
Mar 11 13:43:13 UTC 2026 released job awaits launch by Slurm scheduler
Mar 11 13:44:22 UTC 2026 running job 1029627 is running
Mar 11 13:50:44 UTC 2026 finished
😁 SUCCESS (click triangle for details)
Details
✅ job output file slurm-1029627.out
✅ no message matching FATAL:
✅ no message matching ERROR:
✅ no message matching FAILED:
✅ no message matching required modules missing:
✅ found message(s) matching No missing installations
✅ found message matching .tar.* created!
Artefacts
eessi-2025.06-software-linux-aarch64-a64fx-17732367500.tar.zstsize: 0 MiB (30672 bytes)
entries: 2
modules under 2025.06/software/linux/aarch64/a64fx/modules/all
no module files in tarball
software under 2025.06/software/linux/aarch64/a64fx/software
no software packages in tarball
reprod directories under 2025.06/software/linux/aarch64/a64fx/reprod
no reprod directories in tarball
other under 2025.06/software/linux/aarch64/a64fx
2025.06/init/easybuild/eb_hooks.py
2025.06/scripts/gpu_support/nvidia/install_cuda_and_libraries.sh
Mar 11 13:50:44 UTC 2026 test result
😁 SUCCESS (click triangle for details)
ReFrame Summary
[ SKIP ] (1/4) EESSI_OSU_coll %benchmark_info=mpi.collective.osu_allreduce %module_name=OSU-Micro-Benchmarks/7.5-gompi-2025a %scale=1_node %device_type=cpu /e4bf9965 @BotBuildTests:a64fx+default [Skipping test: nodes in this partition only have 30720 MiB memory available (per node) according to the current ReFrame configuration, but 49152 MiB is needed]
[ SKIP ] (2/4) EESSI_OSU_coll %benchmark_info=mpi.collective.osu_alltoall %module_name=OSU-Micro-Benchmarks/7.5-gompi-2025a %scale=1_node %device_type=cpu /3da4890b @BotBuildTests:a64fx+default [Skipping test: nodes in this partition only have 30720 MiB memory available (per node) according to the current ReFrame configuration, but 49152 MiB is needed]
[ OK ] (3/4) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_latency %module_name=OSU-Micro-Benchmarks/7.5-gompi-2025a %scale=1_node /3255009a @BotBuildTests:a64fx+default
P: latency: 0.9 us (r:0, l:None, u:None)
[ OK ] (4/4) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_bw %module_name=OSU-Micro-Benchmarks/7.5-gompi-2025a %scale=1_node /59f4b331 @BotBuildTests:a64fx+default
P: bandwidth: 7934.89 MB/s (r:0, l:None, u:None)
[ PASSED ] Ran 2/4 test case(s) from 4 check(s) (0 failure(s), 2 skipped, 0 aborted)
Details
✅ job output file slurm-1029627.out
✅ no message matching ERROR:
✅ no message matching [\s*FAILED\s*].*Ran .* test case
Mar 11 16:15:17 UTC 2026 uploaded transfer of eessi-2025.06-software-linux-aarch64-a64fx-17732367500.tar.zst to S3 bucket succeeded

@ocaisa ocaisa merged commit c481bc1 into EESSI:main Mar 11, 2026
69 of 71 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants