Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2531 commits
Select commit Hold shift + click to select a range
600adee
Remove unused code
Dec 11, 2024
b3fade9
Use step hooks to set and unset force and module-only
Dec 11, 2024
6a1700e
Rename hooks to make more sense
Dec 11, 2024
f938557
add support for alternative artefacts check
smoors Jan 5, 2025
78542d1
Processed Alan's comments
Jan 7, 2025
54abb68
Fix formatting
Jan 7, 2025
f376b9a
Merge branch '2023.06-software.eessi.io' into 2023.06-software.eessi.…
boegel Jan 10, 2025
5bad2d9
use 0x46 as 'CPU implementer' field for A64FX
boegel Jan 10, 2025
e53ac16
fall back to 'CPU implementer' field from /proc/cpuinfo if 'Vendor ID…
boegel Jan 10, 2025
a2c8ffb
Merge pull request #841 from casparvl/warn_zen4_on_2022b
ocaisa Jan 10, 2025
f112406
add Deucalion-Rocky85.all.output for archdetect tests
boegel Jan 10, 2025
d82a188
set correct 'CPU implementer' for graviton2/graviton3
boegel Jan 10, 2025
562fd4d
fix logic for determining field to use to determine CPU flags
boegel Jan 10, 2025
3af9cf6
Merge pull request #608 from boegel/2023.06-software.eessi.io_archdet…
bedroge Jan 10, 2025
733af6d
{2023.06}[2023a] elfx86exts 0.6.2
boegel Jan 13, 2025
b3bb522
Make sure eessi_container.sh will add --nv flag for the test step, wh…
Jan 13, 2025
a94ac7e
use ubuntu-22.04 instead of ubuntu-latest
bedroge Jan 13, 2025
028a70a
change ubuntu-latest to ubuntu-22.04
bedroge Jan 13, 2025
9377d3f
Merge pull request #848 from bedroge/ci_ubuntu_2204
ocaisa Jan 13, 2025
d276c4f
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
bedroge Jan 13, 2025
8ae64a3
Transition CI workflows to Ubuntu 24.04
ocaisa Jan 13, 2025
24e4508
Merge branch '2023.06-software.eessi.io' into start_test_step_contain…
Jan 13, 2025
061db02
Comparison was no good
ocaisa Jan 13, 2025
ff0dd71
Is it this?
ocaisa Jan 13, 2025
78e0eb9
apptainer is not where I expect it
ocaisa Jan 13, 2025
c1dda1b
Use correct location for apptainer starter
ocaisa Jan 13, 2025
ad5a760
Merge pull request #847 from casparvl/start_test_step_container_with_…
boegel Jan 13, 2025
65e4c36
Replace the use of a ReFrame template config file for a manually crea…
Jan 13, 2025
7ee21c6
Merge pull request #849 from ocaisa/ubuntu_24.04
boegel Jan 13, 2025
ae15063
Merge pull request #846 from boegel/2023.06-software.eessi.io_elfx86exts
bedroge Jan 13, 2025
641bf47
Merge pull request #840 from bedroge/modulefile_riscv
trz42 Jan 14, 2025
939cb69
add all EB versions
bedroge Jan 14, 2025
bcc9380
add 4.9.3
bedroge Jan 14, 2025
1f0f4f2
make modules and software directories for new CPU targets
bedroge Jan 14, 2025
e85f839
also install the latest EB release as module before installing EESSI-…
bedroge Jan 14, 2025
eb3cb49
Update load_eessi_extend_module.sh
bedroge Jan 14, 2025
9d6f694
add --from-commit for EB 4.9.4
bedroge Jan 14, 2025
b5e4a91
missing colon
bedroge Jan 14, 2025
274b2dd
Merge pull request #851 from bedroge/2023.06-sapphire_rapids-easybuild
ocaisa Jan 14, 2025
d8794a1
Make the ReFrame args configurable through environment in which the b…
Jan 16, 2025
4c9f1a9
first batch of builds for sapphire rapids
bedroge Jan 17, 2025
f14b111
only build deps for OpenBLAS
bedroge Jan 17, 2025
cec1c16
add GCC for foss 2023a
bedroge Jan 17, 2025
f5649d2
add GCC for foss 2023b
bedroge Jan 17, 2025
9944392
add openblas
bedroge Jan 17, 2025
525cb32
Merge pull request #754 from ocaisa/update_driver_script
bedroge Jan 17, 2025
a1f046c
Merge pull request #852 from bedroge/2023.06-sapphire_rapids-eb482-bu…
boegel Jan 17, 2025
835a497
add dependencies of GObject-Introspection
bedroge Jan 17, 2025
9dbaf2d
add GObject-Introspection
bedroge Jan 17, 2025
9ba7eea
Merge pull request #853 from bedroge/sapphire_rapids_gobject_introspe…
boegel Jan 18, 2025
82ac85b
add missing eb 4.8.2 2022b software
bedroge Jan 18, 2025
5370a64
add deps for OpenMPI
bedroge Jan 18, 2025
7d6f04c
add OpenMPI 4.1.4
bedroge Jan 18, 2025
bf2268c
add OpenMPI 4.1.5
bedroge Jan 18, 2025
a9c7e20
add OpenMPI 4.1.6
bedroge Jan 18, 2025
9b522ee
Merge pull request #855 from bedroge/sapphire_rapids_openmpi_2022b
boegel Jan 18, 2025
80ceaef
Merge branch '2023.06-software.eessi.io' into sapphire_rapids_harfbuz…
ocaisa Jan 18, 2025
a11c44e
Update eessi-2023.06-eb-4.8.2-2022b.yml
ocaisa Jan 18, 2025
95dedd0
dependencies for Python-3.11.3-GCCcore-12.3.0.eb
bedroge Jan 18, 2025
5a4cb25
add Python and hatchling
bedroge Jan 18, 2025
fa4d32a
add dependencies for Python
bedroge Jan 18, 2025
7063de4
add Python and hatchling
bedroge Jan 18, 2025
2073068
from-commit does not work with EB 4.8.2
bedroge Jan 18, 2025
5879394
Merge pull request #856 from bedroge/sapphire_rapids_python3
ocaisa Jan 18, 2025
351346e
pypi bundle dependencies
bedroge Jan 18, 2025
d786196
add Python-bundle-PyPI-2023.06-GCCcore-12.3.0.eb
bedroge Jan 18, 2025
d158e9f
deps for pypi bundle
bedroge Jan 18, 2025
a2a2d4c
add Python-bundle-PyPI-2023.10-GCCcore-13.2.0.eb
bedroge Jan 18, 2025
37ea0eb
add cairo
bedroge Jan 18, 2025
60dd47a
GObject-Introspection and at-spi2-core
bedroge Jan 18, 2025
f71211e
add cairo-1.18.0-GCCcore-13.2.0.eb
bedroge Jan 18, 2025
c15fd97
add GObject-Introspection-1.78.1-GCCcore-13.2.0.eb
bedroge Jan 18, 2025
0bace6b
add at-spi2-core
bedroge Jan 18, 2025
5b8fa32
ReFrame 4.3.3
bedroge Jan 18, 2025
01247ba
ReFrame 4.6.2
bedroge Jan 18, 2025
5916794
Merge pull request #854 from bedroge/sapphire_rapids_harfbuzz_qt5_qua…
ocaisa Jan 18, 2025
c1de8aa
Merge pull request #858 from bedroge/sapphire_rapids_gobject_introspe…
ocaisa Jan 19, 2025
6687bea
Merge branch '2023.06-software.eessi.io' into sapphire_rapids_python_…
bedroge Jan 19, 2025
d7c168b
include easyblock for Rust
bedroge Jan 19, 2025
58ed098
Merge pull request #857 from bedroge/sapphire_rapids_python_bundles
ocaisa Jan 19, 2025
46e3544
add scikit-build-core-0.9.3-GCCcore-13.2.0.eb
bedroge Jan 19, 2025
0e21835
add GROMACS-2024.1-foss-2023b.eb
bedroge Jan 19, 2025
2db27b5
add dependenies of GROMACS 2024.1
bedroge Jan 19, 2025
28afcbc
rebuild Python versions
bedroge Jan 19, 2025
5fdee78
Merge pull request #861 from bedroge/sapphire_rapids_rebuild_python
ocaisa Jan 19, 2025
4520cb6
forgot the from-pr options for scitkit-build-core and GROMACS
bedroge Jan 19, 2025
56f727b
networkx should be done with EB 4.9.1
bedroge Jan 20, 2025
897500a
mpi4py should also be built with EB 4.9.1
bedroge Jan 20, 2025
a1b6500
use easyconfigs PR #22183
bedroge Jan 20, 2025
208979a
rebuild hatchling 1.18.0
bedroge Jan 20, 2025
0ea815f
add all missing EB 4.9.0 2022b apps
bedroge Jan 20, 2025
3851d86
add fix for Highway
bedroge Jan 20, 2025
39dfbd7
Merge pull request #859 from bedroge/sapphire_rapids_reframe
boegel Jan 20, 2025
d08a9a6
Merge pull request #862 from bedroge/sapphire_rapids_rebuild_hatchling
boegel Jan 20, 2025
1dc3470
Merge pull request #860 from bedroge/sapphire_rapids_gromacs_2024.1
boegel Jan 20, 2025
9238a03
add TensorFlow 2.13.0 (and some dependencies)
bedroge Jan 20, 2025
6ba9398
add bunch of apps from 2023b easystack
bedroge Jan 20, 2025
4e9b74d
use from-pr for OpenBLAS (required for Sapphire Rapids support)
bedroge Jan 20, 2025
1d097dd
include fixes for SciPy-bundle from PR 21693
bedroge Jan 20, 2025
5fc7332
Apply suggestions from code review
casparvl Jan 21, 2025
ebe999f
Make sure the EESSI_ACCELERATOR_TARGET is also set for the test step,…
Jan 21, 2025
0ac96f2
Merge pull request #865 from bedroge/sapphire_rapids_eb490_2023b
ocaisa Jan 21, 2025
24bd69a
rebuild SciPy-bundle with additional patches
bedroge Jan 21, 2025
9693125
Merge pull request #864 from bedroge/sapphire_rapids_tensorflow_2.13.0
ocaisa Jan 21, 2025
27978a9
add missing colon
bedroge Jan 21, 2025
02369eb
add remaining EB 4.9.0 2023b builds
bedroge Jan 21, 2025
a5e9c33
add remaining EB 4.8.2 2023a apps
bedroge Jan 21, 2025
5abe39e
try workaround for permission issues with rebuilds
bedroge Jan 21, 2025
2c31511
ls on the new dir
bedroge Jan 21, 2025
b831333
add echo command for debugging
bedroge Jan 21, 2025
5fefebc
recreate all subdirs of removed app
bedroge Jan 21, 2025
1219b34
fix check for rebuilds easystacks
bedroge Jan 21, 2025
9d3d177
add easystack for EB 4.9.1 / 2022b
bedroge Jan 21, 2025
98588e6
add remaining apps for EB 4.9.1 / 2023b
bedroge Jan 21, 2025
bebe777
Merge pull request #867 from bedroge/sapphire_rapids_eb490_2023b_batch2
ocaisa Jan 21, 2025
f036db9
Merge pull request #863 from bedroge/sapphire_rapids_eb-4.9.0-2022b
ocaisa Jan 21, 2025
ab82e6d
reuse existing directory for rebuilds
bedroge Jan 21, 2025
0a85fd2
recreate installation dir and first-level subdirs after it has been r…
bedroge Jan 21, 2025
2715405
merge changes from PR 871
bedroge Jan 21, 2025
30659d6
OSU test got renamed in the test suite. This changes the name accordi…
Jan 21, 2025
2f41f83
Merge pull request #872 from casparvl/fix_osu_naming
bedroge Jan 21, 2025
361fa50
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
bedroge Jan 21, 2025
bc7ab49
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
bedroge Jan 21, 2025
0cf0ced
add dependencies of OpenFOAM
bedroge Jan 21, 2025
b668538
add OpenFOAM 10 and 11
bedroge Jan 21, 2025
db321ca
Merge pull request #868 from bedroge/sapphire_rapids_eb482_2023a
casparvl Jan 21, 2025
f2ad957
Create logic to hide 2022b-based modules on zen4. Can be tested by ru…
Jan 21, 2025
0fbaadf
add all 2022b things to zen4
Jan 21, 2025
8e6816f
Add Python and OpenMPI which were rebuild in the rebuilds dir for oth…
Jan 22, 2025
e1b52db
Make sure we do proper CI check on zen4, including the 2022b stuff, s…
Jan 22, 2025
c41d3e8
Merge pull request #870 from bedroge/sapphire_rapids_eb491_2023b
casparvl Jan 22, 2025
1ff54de
Merge pull request #873 from bedroge/sapphire_rapids_openfoam_10_11
boegel Jan 22, 2025
3619566
add ESPResSO, Rivet, PyTorch
bedroge Jan 22, 2025
e4bfc2c
add remaining apps from EB 4.9.2 2023b easystack
bedroge Jan 22, 2025
28670f6
Merge pull request #866 from bedroge/SciPy-bundle-2023.07-bug-fix
boegel Jan 22, 2025
5164681
Use include-easyblocks-from-pr instead of from-commit, since that was…
Jan 22, 2025
9ef1033
Added DP3, EveryBeam and WSClean from EB PR #21765 to test build agai…
Jan 22, 2025
d6fa38c
Merge pull request #869 from bedroge/sapphire_rapids_eb491_2022b
casparvl Jan 22, 2025
faa4d38
add remaining apps from EB 4.9.2 2022b easystack
bedroge Jan 22, 2025
9dac8c3
remove PyTorch
bedroge Jan 22, 2025
a100070
Merge pull request #875 from bedroge/sapphire_rapids_eb490_2023a_espr…
boegel Jan 23, 2025
a63b8e8
Merge pull request #878 from bedroge/sapphire_rapids_eb492_2022b
boegel Jan 23, 2025
f3cd59c
add bunch of dependencies for PyTorch 2.1.2
bedroge Jan 23, 2025
2ab2b6f
use pytest-* easyconfigs from PR 20164
bedroge Jan 23, 2025
522b2ca
actually, use the PyTorch PR itself for its dependencies
bedroge Jan 23, 2025
e84f1e4
use brunsli commit for R-bundle-CRAN
bedroge Jan 23, 2025
f82d3e7
update comment about R-bundle-CRAN commit
bedroge Jan 23, 2025
b2d094d
Make sure the latest release of the test suite is used
Jan 23, 2025
5e06dff
using the PyTorch PR for deps doesn't work, stick to the original PR
bedroge Jan 23, 2025
3d848aa
reduce number of builds
bedroge Jan 23, 2025
4fcff9d
Merge branch 'use_latest_testsuite_release_for_test_step' of github.c…
bedroge Jan 23, 2025
f7c1284
Merge pull request #879 from bedroge/sapphire_rapids_pytorch_212_deps
boegel Jan 23, 2025
33f4321
add PyTorch
bedroge Jan 23, 2025
da98c52
increase max_failed_tests for PyTorch 2.1.2 to 4 for Sapphire Rapids
bedroge Jan 23, 2025
960dba9
add scikit-learn, snakemake, LAMMPS
bedroge Jan 23, 2025
12b30f6
add STAR, HPL, R-bundle-CRAN
bedroge Jan 23, 2025
a2fc9e7
add PyTorch 2.1.2 issue (too many failing tests) for Sapphire Rapids
bedroge Jan 24, 2025
081dd59
restore original version
bedroge Jan 24, 2025
43440e0
Merge pull request #876 from bedroge/sapphire_rapids_eb492_2023b
Neves-P Jan 24, 2025
9030cdb
add changes from PR#880
bedroge Jan 24, 2025
f70476b
don't expand variables that depend on command substitution
bedroge Jan 24, 2025
2f16d61
Merge pull request #883 from bedroge/sapphire_rapids_eb490_2023a_batch1
boegel Jan 24, 2025
ef55a02
Merge branch '2023.06-software.eessi.io' into sapphire_rapids_pytorch…
bedroge Jan 24, 2025
ee6835e
another batch of apps for EB 4.9.0 and 2023a
bedroge Jan 24, 2025
86ae593
use single quotes for grep command contained in double-quoted string
bedroge Jan 24, 2025
5c40a40
Merge branch '2023.06-software.eessi.io' into sapphire_rapids_eb492_2…
bedroge Jan 24, 2025
152414b
Merge pull request #882 from bedroge/sapphire_rapids_pytorch_212
boegel Jan 24, 2025
9af8394
Merge pull request #886 from bedroge/fix_use_latest_testsuite_release…
boegel Jan 24, 2025
8b3e0de
Merge branch '2023.06-software.eessi.io' into sapphire_rapids_eb490_2…
bedroge Jan 24, 2025
df2e509
solve conflict
bedroge Jan 24, 2025
20070e6
add GROMACS/2024.3-foss-2023b
bedroge Jan 24, 2025
99299f4
Merge pull request #884 from bedroge/sapphire_rapids_eb492_2023b_batch2
boegel Jan 24, 2025
1e91c24
Merge pull request #887 from bedroge/sapphire_rapids_eb490_2023a_batch2
boegel Jan 24, 2025
4bf741c
Merge pull request #888 from bedroge/sapphire_rapids_gromacs_2024.3
boegel Jan 24, 2025
1dd1d1f
Merge branch '2023.06-software.eessi.io' into 2023.06-software.eessi.…
boegel Jan 24, 2025
cfa9695
add EB 4.9.4 2023b easystack
bedroge Jan 24, 2025
34928cb
another batch of apps
bedroge Jan 24, 2025
6302345
Merge pull request #874 from casparvl/generate_and_hide_zen4_foss2022…
bedroge Jan 24, 2025
353562b
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
bedroge Jan 24, 2025
323dd13
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
bedroge Jan 24, 2025
5799125
add R-bundle-CRAN-2023.12-foss-2023a.eb
bedroge Jan 24, 2025
9116904
disable using x86_64/amd/zen3 when x86_64/amd/zen4 in EESSI/2023.06 m…
boegel Jan 25, 2025
ff5da1c
Merge pull request #892 from bedroge/sapphire_rapids_eb490_2023a_batch3
boegel Jan 25, 2025
5e00336
Merge pull request #891 from bedroge/sapphire_rapids_eb494_2023b
boegel Jan 25, 2025
2dda896
Merge branch '2023.06-software.eessi.io' into sapphire_rapids_eb490_2…
bedroge Jan 25, 2025
f000a8e
Merge pull request #766 from boegel/2023.06-software.eessi.io_zen4
bedroge Jan 25, 2025
ebf3176
Merge pull request #893 from bedroge/sapphire_rapids_eb490_2023a_r_bu…
boegel Jan 25, 2025
5dd60c4
add remaining apps from EB 4.9.1 2023a easystack
bedroge Jan 25, 2025
30fa1e5
first batch of apps from EB 4.9.2 2023a easystack
bedroge Jan 26, 2025
4b45c24
remove fastp and DIAMOND
bedroge Jan 26, 2025
cd29045
restore original easystack, and add some more apps
bedroge Jan 26, 2025
ebe21c1
Merge pull request #895 from bedroge/sapphire_rapids_eb491_2023a
boegel Jan 26, 2025
bf13ff4
last batch of apps for EB 4.9.2 2023a
bedroge Jan 26, 2025
54f8d0f
Merge pull request #896 from bedroge/sapphire_rapids_eb492_2023a
boegel Jan 26, 2025
71b5191
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
bedroge Jan 26, 2025
8f01e37
remove librosa
bedroge Jan 27, 2025
06f420a
build librosa with EB 4.9.4
bedroge Jan 27, 2025
df7a5ee
add easystack for EB 4.9.3 / 2023a
bedroge Jan 27, 2025
8413f1a
Merge pull request #897 from bedroge/sapphire_rapids_eb492_2023a_batch2
boegel Jan 27, 2025
84653ca
add EB 4.9.4 2023a easystack
bedroge Jan 28, 2025
cccb112
Merge pull request #899 from bedroge/sapphire_rapids_eb493_2023a
Neves-P Jan 28, 2025
882dd62
Merge pull request #898 from bedroge/sapphire_rapids_librosa_0.10.1_2…
Neves-P Jan 28, 2025
22d793e
Merge branch '2023.06-software.eessi.io' into sapphire_rapids_eb494_2…
bedroge Jan 28, 2025
a9f42cc
Merge pull request #900 from bedroge/sapphire_rapids_eb494_2023a
ocaisa Jan 28, 2025
6aef77f
add LAMMPS-29Aug2024-foss-2023b
bedroge Jan 28, 2025
1462d25
Add BCFTools so that we have SOMETHING to build in this PR
Jan 28, 2025
673861b
Add explicit path to reframe config file for AWS bot for testing
Jan 28, 2025
189cc79
/home/casparl gets set to something else, so lets try this
Jan 28, 2025
d93dee5
This needs to be a path that is actually accessible in the container…
Jan 28, 2025
7b04794
Needs to be caps, of course
Jan 28, 2025
cc637e8
Allow using the envrionemn t variable if it is set, so Lara can test
Jan 28, 2025
7b9c90c
Look for bot config in the SHARED_FS_PATH by default
Jan 28, 2025
b0aaed2
export SHARED_FS_PATH so that it is available to
Jan 28, 2025
28abaf6
Explicitely pass shared-fs-path as argument to the test_suite.sh
Jan 28, 2025
5ca5a76
Make all shared_fs_path env vars lower case
Jan 28, 2025
99c5f88
Make this two separate strings, so that they are two separate argumen…
Jan 28, 2025
732e6d4
use updated easyblock with sapphire rapids fix
bedroge Jan 28, 2025
61d4617
Remove BCFtools from this PR, it was just meant to demonstrate the fu…
Jan 28, 2025
896f2d4
Removed white line and comments
Jan 28, 2025
902a20e
Merge pull request #850 from casparvl/use_local_reframe_config_file
laraPPr Jan 29, 2025
0460342
Merge pull request #901 from bedroge/sapphire_rapids_LAMMPS-29Aug2024…
ocaisa Jan 29, 2025
f4bab35
rename to USE_CHECK_BUILD_ARTEFACTS_SCRIPT; error if script is not found
smoors Jan 30, 2025
be0977d
fix
smoors Jan 30, 2025
e5990d2
fix ordering
smoors Jan 31, 2025
51a1006
Merge pull request #844 from smoors/alt_artefacts
boegel Jan 31, 2025
5889b2d
add archspec 0.2.5
bedroge Feb 2, 2025
5be1e03
easystack for rebuilding LAMMPS 2Aug2023 (for Sapphire Rapids)
bedroge Feb 3, 2025
ab45d92
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
bedroge Feb 3, 2025
8d5ef69
remove find command
bedroge Feb 3, 2025
aa31e15
do an ls on the original subdirs of the installation dir to work arou…
bedroge Feb 3, 2025
ecbc361
no need to do the ls on subdirs in a for loop, do them all at once
bedroge Feb 3, 2025
0560af8
better workaround for permission issues with the recreated installati…
bedroge Feb 3, 2025
bb4e823
Merge pull request #905 from bedroge/archspec_0.2.5
ocaisa Feb 3, 2025
1357775
Merge pull request #907 from bedroge/improved_fix_permission_issues_f…
ocaisa Feb 3, 2025
d7d635d
Merge branch '2023.06-software.eessi.io' into rebuild_lammps_generic
bedroge Feb 3, 2025
2404c10
Merge pull request #788 from bedroge/rebuild_lammps_generic
casparvl Feb 4, 2025
224e170
Merge pull request #906 from bedroge/lammps_2Aug2023_sapphire_rapids_…
casparvl Feb 4, 2025
9eacba5
Update from-commit to merge commit
Feb 7, 2025
91de11e
Merge pull request #877 from casparvl/everybeam_wsclean_dp3_foss2023b
bedroge Feb 11, 2025
2dbe931
GH200-test
Feb 11, 2025
be3c401
test-pr
Feb 12, 2025
3641089
test-pr
Feb 12, 2025
2f7daaa
test-pr
Feb 12, 2025
310c67a
test-pr
Feb 12, 2025
d5680f6
test-pr
Feb 12, 2025
7c43116
test-pr
Feb 12, 2025
8076409
test-pr
Feb 12, 2025
e12bff8
test-pr
Feb 12, 2025
22779e4
test-pr
Feb 12, 2025
bbf6c81
test-pr
Feb 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/modules/fake_module.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
setenv("INSIDE_GITHUB_ACTIONS", "true")
-- Interfere with PATH so Lmod keeps a record
prepend_path("PATH", "/snap/bin")
20 changes: 8 additions & 12 deletions .github/workflows/scorecards.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,22 @@

name: Scorecards supply-chain security
on:
# For Branch-Protection check. Only the default branch is supported. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
branch_protection_rule:
# To guarantee Maintained check is occasionally updated. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
schedule:
- cron: '25 15 * * 3'
push:
branches: [ "main" ]
pull_request:
branches:
- main
branches:
- '*-software.eessi.io'

# Declare default permissions as read only.
permissions: read-all

jobs:
analysis:
if: github.repository_owner == 'EESSI' # Prevent running on forks
name: Scorecards analysis
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
permissions:
# Needed to upload the results to code-scanning dashboard.
security-events: write
Expand All @@ -35,12 +31,12 @@ jobs:

steps:
- name: "Checkout code"
uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
with:
persist-credentials: false

- name: "Run analysis"
uses: ossf/scorecard-action@99c53751e09b9529366343771cc321ec74e9bd3d # v2.0.6
uses: ossf/scorecard-action@dc50aa9510b46c811795eb24b2f1ba02a914e534 # v2.3.3
with:
results_file: results.sarif
results_format: sarif
Expand All @@ -62,14 +58,14 @@ jobs:
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: "Upload artifact"
uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: SARIF file
path: results.sarif
retention-days: 5

# Upload the results to GitHub's code scanning dashboard.
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@807578363a7869ca324a79039e6db9c843e0e100 # v2.1.27
uses: github/codeql-action/upload-sarif@9fdb3e49720b44c48891d036bb502feb25684276 # v3.25.6
with:
sarif_file: results.sarif
58 changes: 58 additions & 0 deletions .github/workflows/scripts/only_latest_easystacks.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#!/bin/bash
#
# This script figures out the latest version of EasyBuild being used for the installation of easystack
# files.
#
# This file is part of the EESSI software layer, see
# https://github.com/EESSI/software-layer.git
#
# author: Alan O'Cais (CECAM)
#
# license: GPLv2
#

EESSI_VERSION=${EESSI_VERSION:-"2023.06"}

directory="easystacks/software.eessi.io/${EESSI_VERSION}"
# List of example filenames
files=($(find "$directory" -name "*.yml" | grep -e '-eb-'))
[ -n "$DEBUG" ] && echo "${files[@]}"

versions=()
# Loop over each filename
for filename in "${files[@]}"; do
# Extract the semantic version using grep
version=$(echo "$filename" | grep -oP '(?<=eb-)\d+\.\d+\.\d+?(?=-)')

# Output the result
[ -n "$DEBUG" ] && echo "Filename: $filename"
[ -n "$DEBUG" ] && echo "Extracted version: $version"
[ -n "$DEBUG" ] && echo
versions+=("$version")
done
highest_version=$(printf "%s\n" "${versions[@]}" | sort -V | tail -n 1)

[ -n "$DEBUG" ] && echo "Highest version: $highest_version"
[ -n "$DEBUG" ] && echo
[ -n "$DEBUG" ] && echo "Matching files:"
all_latest_easystacks=($(find $directory -type f -name "*eb-$highest_version*.yml"))

accel_latest_easystacks=()
cpu_latest_easystacks=()

# Loop through the array and split based on partial matching of string
accel="/accel/"
for item in "${all_latest_easystacks[@]}"; do
if [[ "$item" == *"$accel"* ]]; then
accel_latest_easystacks+=("$item")
else
cpu_latest_easystacks+=("$item")
fi
done

# Output the results
if [ -n "$ACCEL_EASYSTACKS" ]; then
echo "${accel_latest_easystacks[@]}"
else
echo "${cpu_latest_easystacks[@]}"
fi
50 changes: 50 additions & 0 deletions .github/workflows/scripts/test_init_scripts.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#!/bin/bash
EESSI_VERSION="2023.06"
export LMOD_PAGER=cat

# initialize assert framework
if [ ! -d assert.sh ]; then
echo "assert.sh not cloned."
echo ""
echo "run \`git clone https://github.com/lehmannro/assert.sh.git\`"
exit 1
fi
. assert.sh/assert.sh

TEST_SHELLS=("bash" "zsh" "fish" "ksh")
SHELLS=$@

for shell in ${SHELLS[@]}; do
echo = | awk 'NF += (OFS = $_) + 100'
echo RUNNING TESTS FOR SHELL: $shell
echo = | awk 'NF += (OFS = $_) + 100'
if [[ ! " ${TEST_SHELLS[*]} " =~ [[:space:]]${shell}[[:space:]] ]]; then
### EXCEPTION FOR CSH ###
echo -e "\033[33mWe don't now how to test the shell '$shell', PRs are Welcome.\033[0m"
else
# TEST 1: Source Script and check Module Output
assert "$shell -c 'source init/lmod/$shell' 2>&1 " "EESSI/$EESSI_VERSION loaded successfully"
# TEST 2: Check if module overviews first section is the loaded EESSI module
MODULE_SECTIONS=($($shell -c "source init/lmod/$shell 2>/dev/null; module ov 2>&1 | grep -e '---'"))
PATTERN="/cvmfs/software\.eessi\.io/versions/$EESSI_VERSION/software/linux/x86_64/(intel/haswell|amd/zen3)/modules/all"
assert_raises 'echo "${MODULE_SECTIONS[1]}" | grep -E "$PATTERN"'
# TEST 3: Check if module overviews second section is the EESSI init module
assert "echo ${MODULE_SECTIONS[4]}" "/cvmfs/software.eessi.io/versions/$EESSI_VERSION/init/modules"
# Test 4: Load Python module and check version
command="$shell -c 'source init/lmod/$shell 2>/dev/null; module load Python/3.10.8-GCCcore-12.2.0; python --version'"
expected="Python 3.10.8"
assert "$command" "$expected"
# Test 5: Load Python module and check path
PYTHON_PATH=$($shell -c "source init/lmod/$shell 2>/dev/null; module load Python/3.10.8-GCCcore-12.2.0; which python")
PATTERN="/cvmfs/software\.eessi\.io/versions/$EESSI_VERSION/software/linux/x86_64/(intel/haswell|amd/zen3)/software/Python/3\.10\.8-GCCcore-12\.2\.0/bin/python"
echo "$PYTHON_PATH" | grep -E "$PATTERN"
assert_raises 'echo "$PYTHON_PATH" | grep -E "$PATTERN"'

#End Test Suite
assert_end "source_eessi_$shell"
fi
done


# RESET PAGER
export LMOD_PAGER=
116 changes: 116 additions & 0 deletions .github/workflows/test-software.eessi.io.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# documentation: https://help.github.com/en/articles/workflow-syntax-for-github-actions
name: Check for missing software installations in software.eessi.io
on:
push:
branches: [ "*-software.eessi.io" ]
pull_request:
workflow_dispatch:
permissions:
contents: read # to fetch code (actions/checkout)
env:
EESSI_ACCELERATOR_TARGETS: |
x86_64/amd/zen2:
- nvidia/cc80
x86_64/amd/zen3:
- nvidia/cc80
jobs:
check_missing:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
EESSI_VERSION:
- 2023.06
EESSI_SOFTWARE_SUBDIR_OVERRIDE:
- aarch64/generic
- aarch64/neoverse_n1
- aarch64/neoverse_v1
- x86_64/amd/zen2
- x86_64/amd/zen3
- x86_64/amd/zen4
- x86_64/intel/haswell
- x86_64/intel/skylake_avx512
- x86_64/generic
steps:
- name: Check out software-layer repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1

- name: Mount EESSI CernVM-FS pilot repository
uses: cvmfs-contrib/github-action-cvmfs@55899ca74cf78ab874bdf47f5a804e47c198743c # v4.0
with:
cvmfs_config_package: https://github.com/EESSI/filesystem-layer/releases/download/latest/cvmfs-config-eessi_latest_all.deb
cvmfs_http_proxy: DIRECT
cvmfs_repositories: software.eessi.io

- name: Test check_missing_installations.sh script
run: |
export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}}
source /cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}/init/bash
# set $EESSI_CPU_FAMILY to the CPU architecture that corresponds to $EESSI_SOFTWARE_SUBDIR_OVERRIDE (part before the first slash),
# to prevent issues with checks in the Easybuild configuration that use this variable
export EESSI_CPU_FAMILY=${EESSI_SOFTWARE_SUBDIR_OVERRIDE%%/*}
module load EasyBuild
which eb
eb --version
export EESSI_PREFIX=/cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}
export EESSI_OS_TYPE=linux
env | grep ^EESSI | sort

# first check the CPU-only builds for this CPU target
echo "just run check_missing_installations.sh (should use easystacks/software.eessi.io/${{matrix.EESSI_VERSION}}/eessi-${{matrix.EESSI_VERSION}}-*.yml with latest EasyBuild release)"
for easystack_file in $(EESSI_VERSION=${{matrix.EESSI_VERSION}} .github/workflows/scripts/only_latest_easystacks.sh); do
echo "check missing installations for ${easystack_file}..."
./check_missing_installations.sh ${easystack_file}
ec=$?
if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi
done

# now check the accelerator builds for this CPU target
accelerators=$(echo "${EESSI_ACCELERATOR_TARGETS}" | yq ".${EESSI_SOFTWARE_SUBDIR_OVERRIDE}[]")
if [ -z ${accelerators} ]; then
echo "no accelerator targets defined for ${EESSI_SOFTWARE_SUBDIR_OVERRIDE}"
else
for accel in ${accelerators}; do
module use ${EESSI_SOFTWARE_PATH}/accel/${accel}/modules/all
echo "checking missing installations for accelerator ${accel} using modulepath: ${MODULEPATH}"
for easystack_file in $(EESSI_VERSION=${{matrix.EESSI_VERSION}} ACCEL_EASYSTACKS=1 .github/workflows/scripts/only_latest_easystacks.sh); do
echo "check missing installations for ${easystack_file}..."
./check_missing_installations.sh ${easystack_file}
ec=$?
if [[ ${ec} -ne 0 ]]; then echo "missing installations found for ${easystack_file}!" >&2; exit ${ec}; fi
done
module unuse ${EESSI_SOFTWARE_PATH}/accel/${accel}/modules/all
done
fi

- name: Test check_missing_installations.sh with missing package (GCC/8.3.0)
run: |
export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}}
source /cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}/init/bash
# set $EESSI_CPU_FAMILY to the CPU architecture that corresponds to $EESSI_SOFTWARE_SUBDIR_OVERRIDE (part before the first slash),
# to prevent issues with checks in the Easybuild configuration that use this variable
export EESSI_CPU_FAMILY=${EESSI_SOFTWARE_SUBDIR_OVERRIDE%%/*}
module load EasyBuild
which eb
eb --version
export EESSI_PREFIX=/cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}
export EESSI_OS_TYPE=linux
env | grep ^EESSI | sort
# create dummy easystack file with a single entry (something that is not installed in EESSI)
easystack_file="test.yml"
echo "easyconfigs:" > ${easystack_file}
echo " - GCC-8.3.0:" >> ${easystack_file}
echo "created easystack file '${easystack_file}' with a missing installation (GCC/8.3.0):"
cat ${easystack_file}
# note, check_missing_installations.sh exits 1 if a package was
# missing, which is intepreted as false (exit code based, not
# boolean logic), hence when the script exits 0 if no package was
# missing it is interpreted as true, thus the test did not capture
# the missing package
if ./check_missing_installations.sh ${easystack_file}; then
echo "did NOT capture missing package; test FAILED"
exit 1
else
echo "captured missing package; test PASSED"
exit 0
fi
72 changes: 0 additions & 72 deletions .github/workflows/test_eessi.yml

This file was deleted.

Loading