diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c75c3094ab440a4b249185721a35c621b7cf0ad8..59ec4499dc5e23da91f12fd6a09edb1eec14c932 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -269,17 +269,18 @@ sync-gitlab-spack-instance:
- spack load $EBRAINS_SPACK_COMPILER
- spack compiler find
- spack compiler list
- # activate environment (and create it, if it doesn't exist)
+ # create environment, if it doesn't exist
- spack env list | grep -q $SPACK_NFS_ENV && echo "Environment created already" || spack env create $SPACK_NFS_ENV
- - spack env activate $SPACK_NFS_ENV
# update environment site-configs
- - rm -rf $SPACK_ENV/site-config && cp -r site-config $SPACK_ENV
+ - rm -rf $SPACK_ROOT/var/spack/environments/$SPACK_NFS_ENV/site-config && cp -r site-config $SPACK_ROOT/var/spack/environments/$SPACK_NFS_ENV
# update spack.yaml: merge top-level and site-specific spack.yaml files
- spack-python site-config/ymerge.py spack.yaml site-config/$SYSTEMNAME/spack.yaml > /tmp/spack.yaml
- - cp /tmp/spack.yaml $SPACK_ENV/
+ - cp /tmp/spack.yaml $SPACK_ROOT/var/spack/environments/$SPACK_NFS_ENV
# There is a known spack bug (https://github.com/spack/spack/issues/29447) in installing test dependencies for installation tests. The workaround suggested
# in the issue is to NOT concretize separately, but simply remove the .lock file and let the enironment be concretized by the spack install command:
- rm $SPACK_ROOT/var/spack/environments/$SPACK_NFS_ENV/spack.lock || echo "No spack.lock file"
+ # then activate environment
+ - spack env activate $SPACK_NFS_ENV
- spack install -y -j2 --fresh --test root
- spack reindex
after_script:
diff --git a/install_spack_env.sh b/install_spack_env.sh
index 16311c4712d228d9a0dfc79e9f0c5ae9a934e12c..f4ba7847e58de8655f006259f107097d0a1a5b5a 100644
--- a/install_spack_env.sh
+++ b/install_spack_env.sh
@@ -55,18 +55,19 @@ then
spack env create $EBRAINS_SPACK_ENV
fi
-# activate environment
-spack env activate $EBRAINS_SPACK_ENV
# update environment site-configs
-rm -rf $SPACK_ENV/site-config && cp -r $EBRAINS_REPO/site-config $SPACK_ENV
+rm -rf $SPACK_ROOT/var/spack/environments/$EBRAINS_SPACK_ENV/site-config && cp -r $EBRAINS_REPO/site-config $SPACK_ROOT/var/spack/environments/$EBRAINS_SPACK_ENV
# update spack.yaml: merge top-level and site-specific spack.yaml files
spack-python $EBRAINS_REPO/site-config/ymerge.py $EBRAINS_REPO/spack.yaml $EBRAINS_REPO/site-config/$SYSTEMNAME/spack.yaml > /tmp/spack.yaml
-cp /tmp/spack.yaml $SPACK_ENV/
+cp /tmp/spack.yaml $SPACK_ROOT/var/spack/environments/$EBRAINS_SPACK_ENV/
# There is a known spack bug (https://github.com/spack/spack/issues/29447) in installing test dependencies
# for installation tests. The workaround suggested in the issue is to NOT concretize separately, but simply
# remove the .lock file and let the environment be concretized by the spack install command:
rm $SPACK_ROOT/var/spack/environments/$EBRAINS_SPACK_ENV/spack.lock || echo "No spack.lock file"
+
+# activate environment
+spack env activate $EBRAINS_SPACK_ENV
# install the environment, use 2 jobs to reduce the amount of required RAM
spack install -y -j2 --fresh --test root