Skip to content
Snippets Groups Projects
Commit e12a1f55 authored by Eleni Mathioulaki's avatar Eleni Mathioulaki
Browse files

add gitlab-ci job that keeps the gitlab runners' spack up to date with the lab's spack instance

parent b0ff119c
No related branches found
No related tags found
1 merge request!153create new experimental release
Pipeline #18405 canceled with stage
in 6 seconds
stages:
- build
- deploy
- sync
# start an OpenShift Job that will build the Spack environment
.deploy-build-environment:
......@@ -284,3 +285,55 @@ build-spack-env-on-runner:
paths:
- .spack-tmp/spack/spack-stage
when: on_failure
sync_gitlab_spack_instance:
stage: sync
tags:
- docker-runner
- read-write
image: docker-registry.ebrains.eu/tc/ebrains-spack-build-env:gitlab_runners_nfs_latest
variables:
SPACK_NFS_ENV: ebrains-runner-build
SPACK_PATH: /mnt/spack
SPACK_USER_CACHE_PATH: $SPACK_PATH/.spack
SPACK_USER_CONFIG_PATH: $SPACK_PATH/.spack
script:
- |
if [ ! -d $SPACK_PATH ]; then
# git clone --depth 1 -c advice.detachedHead=false -c feature.manyFiles=true --branch $SPACK_VERSION https://github.com/spack/spack $SPACK_PATH
git clone -c feature.manyFiles=true https://github.com/spack/spack $SPACK_PATH
cd $SPACK_PATH
git checkout -b ebrains_spack_commit a8d440d3ababcdec20d665ad938ab880cd9b9d17
cd ../
cat <<EOF > $SPACK_PATH/etc/spack/packages.yaml
packages:
all:
target: [x86_64]
EOF
fi
- . $SPACK_PATH/share/spack/setup-env.sh
# - spack bootstrap untrust github-actions
- spack compiler find
- spack compiler list
- spack load gcc@10.3.0 || spack install gcc@10.3.0
- spack load gcc@10.3.0
- spack compiler find
- spack compiler list
- spack install python@3.8.11 %gcc@10.3.0
# - for section in $(spack config list); do spack config blame $section; done
- spack repo list | grep -q ebrains-spack-builds && echo "Repository registered already" || spack repo add $CI_PROJECT_DIR
- spack repo list
- spack env list | grep -q $SPACK_NFS_ENV && echo "Environment created already" || spack env create $SPACK_NFS_ENV $CI_PROJECT_DIR/spack.yaml
- spack env activate $SPACK_NFS_ENV
- cp $CI_PROJECT_DIR/spack.yaml $SPACK_ROOT/var/spack/environments/$SPACK_NFS_ENV/spack.yaml
- spack concretize -f
- rm -rf /mnt/build_logs/
- spack install --no-check-signature || cp -r /tmp/spack/spack-stage /mnt/build_logs
timeout: 1 day
only:
refs:
- schedules
variables:
- $RELEASE == "experimental"
allow_failure: false
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment