Skip to content

Commit 9d0dac6

Browse files
committed
Extend CI for the other scenarios
1 parent c10cc39 commit 9d0dac6

File tree

1 file changed

+62
-11
lines changed

1 file changed

+62
-11
lines changed

.github/workflows/tests_eessi_extend_module.yml

Lines changed: 62 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,21 +26,32 @@ jobs:
2626

2727
- name: Install the EESSI-extend shipped with the repository
2828
run: |
29-
# EESSI is already available
29+
# Let's start from a clean slate (unload the EESSI module)
30+
module purge
31+
check_disallowed_env_prefix EESSI_
32+
check_disallowed_env_prefix EASYBUILD_
33+
34+
# Load the EESSI module
35+
module load EESSI/${{matrix.EESSI_VERSION}}
36+
check_disallowed_env_prefix EASYBUILD_
37+
38+
# Load EasyBuild to install EESSI-extend
3039
module load EasyBuild
3140
# Set an installation path
3241
export MY_INSTALLATION_PATH=/tmp/easybuild
3342
export EASYBUILD_PREFIX=$MY_INSTALLATION_PATH
3443
eb EESSI-extend-easybuild.eb --rebuild
44+
3545
# Verify that we can pick the installed version up
3646
module use $MY_INSTALLATION_PATH/modules/all
3747
module load EESSI-extend/${{matrix.EESSI_VERSION}}-easybuild
3848
echo $EBROOTEESSIMINEXTEND | grep $MY_INSTALLATION_PATH || { echo "ERROR: Installed version of EESSI-extend not picked up (loaded $EBROOTEESSIMINEXTEND)" >&2; exit 1; }
3949
module unload EESSI-extend
50+
# That should have unset all EasyBuild envvars (including EASYBUILD_PREFIX)
51+
check_disallowed_env_prefix EASYBUILD_
4052
module unuse $MY_INSTALLATION_PATH/modules/all
41-
unset EASYBUILD_PREFIX
42-
43-
- name: Run tests for EESSI-extend in the various scenarios
53+
54+
- name: Run tests for EESSI-extend in the various CPU-only scenarios
4455
run: |
4556
export MY_INSTALLATION_PATH=/tmp/easybuild
4657
@@ -51,21 +62,61 @@ jobs:
5162
5263
# Let's start from a clean slate
5364
module purge
54-
check_disallowed_env_prefix EESSI_
55-
check_disallowed_env_prefix EASYBUILD_
56-
57-
# Load the EESSI module
5865
module load EESSI/${{matrix.EESSI_VERSION}}
59-
check_disallowed_env_prefix EASYBUILD_
6066
# Access the installed EESSI-extend
61-
module use /tmp/easybuild/modules/all
67+
module use "$MY_INSTALLATION_PATH"/modules/all
68+
check_disallowed_env_prefix EASYBUILD_
6269
6370
# Configure for CVMFS install
6471
export EESSI_CVMFS_INSTALL=1
6572
module load EESSI-extend/${{matrix.EESSI_VERSION}}-easybuild
66-
# check some common ones
73+
# check some common EasyBuild settings
6774
check_env_var "EASYBUILD_READ_ONLY_INSTALLDIR" "1"
6875
check_env_var "EASYBUILD_ALLOW_LOADED_MODULES" "EasyBuild,EESSI-extend"
6976
check_env_var "EASYBUILD_SYSROOT" "$EESSI_EPREFIX"
77+
check_env_var "EASYBUILD_HOOKS" "/cvmfs/software.eessi.io/versions/${{matrix.EESSI_VERSION}}/init/easybuild/eb_hooks.py"
78+
check_env_var "EASYBUILD_RPATH" "1"
79+
check_env_var "EASYBUILD_FILTER_ENV_VARS" "LD_LIBRARY_PATH"
7080
# check some specific ones
7181
check_env_var "EASYBUILD_INSTALLPATH" "$EESSI_SOFTWARE_PATH"
82+
check_env_var "EASYBUILD_UMASK" "022"
83+
# unload and check the environment is clean again
84+
module unload EESSI-extend
85+
check_disallowed_env_prefix EASYBUILD_
86+
unset EESSI_CVMFS_INSTALL
87+
88+
# Now configure for a site
89+
export EESSI_SITE_INSTALL=1
90+
module load EESSI-extend/${{matrix.EESSI_VERSION}}-easybuild
91+
# check some specific envvars
92+
check_env_var "EASYBUILD_INSTALLPATH" "$EESSI_SITE_SOFTWARE_PATH"
93+
check_env_var "EASYBUILD_UMASK" "022"
94+
# unload and check the environment is clean again
95+
module unload EESSI-extend
96+
check_disallowed_env_prefix EASYBUILD_
97+
unset EESSI_SITE_INSTALL
98+
99+
# Now for a project
100+
export EESSI_PROJECT_INSTALL="$MY_INSTALLATION_PATH"
101+
module load EESSI-extend/${{matrix.EESSI_VERSION}}-easybuild
102+
# check some specific envvars
103+
check_env_var "EASYBUILD_INSTALLPATH" "$MY_INSTALLATION_PATH/versions/$EESSI_VERSION/software/linux/$EESSI_SOFTWARE_SUBDIR"
104+
check_env_var "EASYBUILD_UMASK" "002"
105+
check_env_var "EASYBUILD_GROUP_WRITABLE_INSTALLDIR" "1"
106+
# unload and check the environment is clean again
107+
module unload EESSI-extend
108+
check_disallowed_env_prefix EASYBUILD_
109+
unset EESSI_PROJECT_INSTALL
110+
111+
# Now for a user
112+
export EESSI_USER_INSTALL="$MY_INSTALLATION_PATH/$USER"
113+
mkdir -p $EESSI_USER_INSTALL # must exist
114+
module load EESSI-extend/${{matrix.EESSI_VERSION}}-easybuild
115+
# check some specific envvars
116+
check_env_var "EASYBUILD_INSTALLPATH" "$MY_INSTALLATION_PATH/$USER/versions/$EESSI_VERSION/software/linux/$EESSI_SOFTWARE_SUBDIR"
117+
check_env_var "EASYBUILD_UMASK" "077"
118+
# unload and check the environment is clean again
119+
module unload EESSI-extend
120+
check_disallowed_env_prefix EASYBUILD_
121+
unset EESSI_USER_INSTALL
122+

0 commit comments

Comments
 (0)