@@ -14,10 +14,11 @@ jobs:
14
14
matrix :
15
15
EESSI_VERSION :
16
16
- ' 2023.06'
17
+ - ' 2025.06'
17
18
steps :
18
19
- name : Check out software-layer repository
19
20
uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
20
-
21
+
21
22
- name : Mount EESSI CernVM-FS repository
22
23
uses : cvmfs-contrib/github-action-cvmfs@55899ca74cf78ab874bdf47f5a804e47c198743c # v4.0
23
24
with :
42
43
env | grep LMOD
43
44
module purge
44
45
unset MODULEPATH
45
-
46
+
46
47
- name : Test for archdetect_cpu functionality with invalid path
47
48
run : |
48
49
# Initialise Lmod
69
70
matrix :
70
71
EESSI_VERSION :
71
72
- ' 2023.06'
73
+ - ' 2025.06'
72
74
EESSI_SOFTWARE_SUBDIR_OVERRIDE :
73
75
- x86_64/amd/zen3
74
76
- x86_64/amd/zen4
80
82
steps :
81
83
- name : Check out software-layer repository
82
84
uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
83
-
85
+
84
86
- name : Mount EESSI CernVM-FS repository
85
87
uses : cvmfs-contrib/github-action-cvmfs@55899ca74cf78ab874bdf47f5a804e47c198743c # v4.0
86
88
with :
@@ -91,19 +93,19 @@ jobs:
91
93
- name : Fix EESSI version in init scripts
92
94
run : |
93
95
sed -i "s/__EESSI_VERSION_DEFAULT__/${{matrix.EESSI_VERSION}}/g" init/eessi_defaults
94
-
96
+
95
97
- name : Test for expected variables match between Lmod init script and original bash script
96
98
run : |
97
99
# Initialise Lmod
98
100
. /cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}/compat/linux/$(uname -m)/usr/share/Lmod/init/bash
99
-
101
+
100
102
# Set our path overrides according to our matrix
101
103
export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}}
102
104
export EESSI_ACCELERATOR_TARGET_OVERRIDE=${{matrix.EESSI_ACCELERATOR_TARGET_OVERRIDE}}
103
-
105
+
104
106
moduleoutfile="moduleout.txt"
105
107
sourceoutfile="sourceout.txt"
106
-
108
+
107
109
# First do (and undo) the Lmod initialisation
108
110
export MODULEPATH=init/modules
109
111
# Turn on debug output in case we want to take a look
@@ -115,7 +117,7 @@ jobs:
115
117
# Store all relevant environment variables
116
118
env | grep -E '(^EESSI_|^LMOD_RC|^LMOD_PACKAGE_PATH|^MODULEPATH)' | grep -v EESSI_ARCHDETECT_OPTIONS | sort > "${moduleoutfile}"
117
119
module unload EESSI/${{matrix.EESSI_VERSION}}
118
-
120
+
119
121
# We should only have two EESSI_* variables defined (which set the overrides)
120
122
if [ "$(env | grep -c '^EESSI')" -ne 2 ]; then
121
123
echo "Expected 2 EESSI-related environment variables, but found a different number."
@@ -129,7 +131,7 @@ jobs:
129
131
unset EESSI_USE_ARCHSPEC
130
132
unset EESSI_USE_ARCHDETECT
131
133
env | grep -E '(^EESSI_|^LMOD_RC|^LMOD_PACKAGE_PATH|^MODULEPATH)' | sort > "${sourceoutfile}"
132
-
134
+
133
135
# Now compare the two results
134
136
echo ""
135
137
echo "Lmod initialisation:"
@@ -141,9 +143,9 @@ jobs:
141
143
echo ""
142
144
if (diff "${moduleoutfile}" "${sourceoutfile}" > /dev/null); then
143
145
echo "Test for checking env variables PASSED"
144
- else
146
+ else
145
147
echo "Test for checking env variables FAILED" >&2
146
- diff --unified=0 "${moduleoutfile}" "${sourceoutfile}"
148
+ diff --unified=0 "${moduleoutfile}" "${sourceoutfile}"
147
149
exit 1
148
150
fi
149
151
@@ -154,6 +156,7 @@ jobs:
154
156
matrix :
155
157
EESSI_VERSION :
156
158
- ' 2023.06'
159
+ # - '2025.06'
157
160
EESSI_SOFTWARE_SUBDIR_OVERRIDE :
158
161
- none
159
162
- x86_64/amd/zen2
@@ -172,19 +175,19 @@ jobs:
172
175
steps :
173
176
- name : Check out software-layer repository
174
177
uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
175
-
178
+
176
179
- name : Mount EESSI CernVM-FS repository
177
180
uses : cvmfs-contrib/github-action-cvmfs@55899ca74cf78ab874bdf47f5a804e47c198743c # v4.0
178
181
with :
179
182
cvmfs_config_package : https://github.com/EESSI/filesystem-layer/releases/download/latest/cvmfs-config-eessi_latest_all.deb
180
183
cvmfs_http_proxy : DIRECT
181
184
cvmfs_repositories : software.eessi.io
182
-
185
+
183
186
- name : Test for identical environment after loading and unloading the EESSI module
184
187
run : |
185
188
# Initialise Lmod
186
189
. /cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}/compat/linux/$(uname -m)/usr/share/Lmod/init/bash
187
-
190
+
188
191
# Set our cpu path overrides according to our matrix
189
192
if [[ "${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}}" != "none" ]]; then
190
193
export EESSI_SOFTWARE_SUBDIR_OVERRIDE=${{matrix.EESSI_SOFTWARE_SUBDIR_OVERRIDE}}
@@ -201,7 +204,7 @@ jobs:
201
204
202
205
initial_env_file="initial_env.txt"
203
206
module_cycled_file="load_unload_cycle.txt"
204
-
207
+
205
208
# prepare Lmod, resetting it in a roundabout way given we don't want defaults set
206
209
export MODULEPATH=init/modules:.github/workflows/modules
207
210
module load fake_module
@@ -217,13 +220,13 @@ jobs:
217
220
module load EESSI/${{matrix.EESSI_VERSION}}
218
221
module unload EESSI/${{matrix.EESSI_VERSION}}
219
222
env | grep -v _ModuleTable | sort > "${module_cycled_file}"
220
-
223
+
221
224
# Now compare the two results (do not expose the files, as they contain the full environment!)
222
225
if (diff "${initial_env_file}" "${module_cycled_file}" > /dev/null); then
223
226
echo "Test for checking env variables PASSED"
224
- else
227
+ else
225
228
echo "Test for checking env variables FAILED" >&2
226
- diff --unified=0 "${initial_env_file}" "${module_cycled_file}"
229
+ diff --unified=0 "${initial_env_file}" "${module_cycled_file}"
227
230
exit 1
228
231
fi
229
232
@@ -245,27 +248,27 @@ jobs:
245
248
steps :
246
249
- name : Check out software-layer repository
247
250
uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
248
-
251
+
249
252
- name : Mount EESSI CernVM-FS repository
250
253
uses : cvmfs-contrib/github-action-cvmfs@55899ca74cf78ab874bdf47f5a804e47c198743c # v4.0
251
254
with :
252
255
cvmfs_config_package : https://github.com/EESSI/filesystem-layer/releases/download/latest/cvmfs-config-eessi_latest_all.deb
253
256
cvmfs_http_proxy : DIRECT
254
257
cvmfs_repositories : software.eessi.io
255
-
258
+
256
259
- name : Make sure we have a sticky EESSI module
257
260
run : |
258
261
# Initialise Lmod
259
262
. /cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}/compat/linux/$(uname -m)/usr/share/Lmod/init/bash
260
-
263
+
261
264
# Make sure we are using the module file from the repository
262
265
export MODULEPATH=init/modules
263
-
266
+
264
267
# Set the relevant environment variable and load the EESSI module
265
268
export EESSI_MODULE_STICKY=1
266
269
module load "EESSI/${{matrix.EESSI_VERSION}}"
267
270
module list |& grep "EESSI/${{matrix.EESSI_VERSION}}"
268
-
271
+
269
272
# Purge and check the module is still loaded
270
273
module purge
271
274
module list |& grep "EESSI/${{matrix.EESSI_VERSION}}"
0 commit comments