Skip to content

Commit bd7ec89

Browse files
authored
Merge pull request #131 from bedroge/swlayer_version_suffix
Introduce `$EESSI_SOFTWARE_LAYER_VERSION_SUFFIX` to make build scripts more dynamic
2 parents e60460a + d23624a commit bd7ec89

File tree

3 files changed

+19
-4
lines changed

3 files changed

+19
-4
lines changed

init/eessi_defaults

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,15 @@
99

1010
export EESSI_VERSION_DEFAULT='__EESSI_VERSION_DEFAULT__'
1111

12-
export EESSI_VERSION="${EESSI_VERSION_OVERRIDE:=${EESSI_VERSION_DEFAULT}}"
12+
# if $EESSI_VERSION_OVERRIDE is set and has a suffix, e.g. 2025.06-001,
13+
# we split it into EESSI_VERSION (2025.06) and EESSI_SOFTWARE_LAYER_VERSION_SUFFIX (-001)
14+
if [[ "${EESSI_VERSION_OVERRIDE}" == *-* ]]; then
15+
export EESSI_VERSION=${EESSI_VERSION_OVERRIDE%-*}
16+
export EESSI_SOFTWARE_LAYER_VERSION_SUFFIX="-${EESSI_VERSION_OVERRIDE#*-}"
17+
else
18+
export EESSI_VERSION="${EESSI_VERSION_OVERRIDE:=${EESSI_VERSION_DEFAULT}}"
19+
export EESSI_SOFTWARE_LAYER_VERSION_SUFFIX=""
20+
fi
1321

1422
# use different defaults for RISC-V clients
1523
if [[ $(uname -m) == "riscv64" ]]; then

init/minimal_eessi_env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ EESSI_INIT_DIR_PATH=$(dirname $(readlink -f $BASH_SOURCE))
88
# script takes *_OVERRIDEs into account
99
source ${EESSI_INIT_DIR_PATH}/eessi_defaults
1010

11-
export EESSI_PREFIX=$EESSI_CVMFS_REPO/versions/$EESSI_VERSION
11+
export EESSI_PREFIX=$EESSI_CVMFS_REPO/versions/${EESSI_VERSION}${EESSI_SOFTWARE_LAYER_VERSION_SUFFIX}
1212

1313
if [[ $(uname -s) == 'Linux' ]]; then
1414
export EESSI_OS_TYPE='linux'

init/modules/EESSI/2023.06.lua

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,18 @@ local eessi_repo = "/cvmfs/software.eessi.io"
1616
local eessi_prefix = pathJoin(eessi_repo, "versions", eessi_version)
1717
local eessi_compat_prefix = pathJoin(eessi_prefix, "compat")
1818
local eessi_init_prefix = pathJoin(eessi_prefix, "init")
19+
local eessi_software_layer_version_suffix = ""
1920
local eessi_os_type = "linux"
2021
-- for RISC-V clients we need to do some overrides, as things are stored in different CVMFS repositories
2122
if (subprocess("uname -m"):gsub("\n$","") == "riscv64") then
2223
if (eessi_version == "2023.06" or eessi_version == "20240402") then
23-
eessi_version = os.getenv("EESSI_VERSION_OVERRIDE") or "20240402"
24+
eessi_version_override = os.getenv("EESSI_VERSION_OVERRIDE") or ""
25+
index_suffix = string.find(eessi_version_override, '-')
26+
if index_suffix then
27+
eessi_software_layer_version_suffix = string.sub(eessi_version_override, index_suffix)
28+
end
2429
eessi_repo = "/cvmfs/riscv.eessi.io"
25-
eessi_prefix = pathJoin(eessi_repo, "versions", eessi_version)
30+
eessi_prefix = pathJoin(eessi_repo, "versions", eessi_version .. eessi_software_layer_version_suffix)
2631
eessi_compat_prefix = pathJoin(eessi_prefix, "compat")
2732
if mode() == "load" then
2833
LmodMessage("RISC-V architecture detected, but there is no RISC-V support yet in the production repository.\n" ..
@@ -139,6 +144,8 @@ prepend_path("PATH", pathJoin(eessi_eprefix, "bin"))
139144
eessiDebug("Adding " .. pathJoin(eessi_eprefix, "bin") .. " to PATH")
140145
prepend_path("PATH", pathJoin(eessi_eprefix, "usr", "bin"))
141146
eessiDebug("Adding " .. pathJoin(eessi_eprefix, "usr", "bin") .. " to PATH")
147+
setenv("EESSI_SOFTWARE_LAYER_VERSION_SUFFIX", eessi_software_layer_version_suffix)
148+
eessiDebug("Setting EESSI_SOFTWARE_LAYER_VERSION_SUFFIX to " .. eessi_software_layer_version_suffix)
142149
setenv("EESSI_SOFTWARE_PATH", eessi_software_path)
143150
eessiDebug("Setting EESSI_SOFTWARE_PATH to " .. eessi_software_path)
144151
setenv("EESSI_MODULEPATH", eessi_module_path)

0 commit comments

Comments
 (0)