Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:15:27

0001 #!/bin/bash
0002 
0003 # Setup script error handling see https://disconnected.systems/blog/another-bash-strict-mode for details
0004 set -uo pipefail
0005 trap 's=$?; echo "$0: Error on line "$LINENO": $BASH_COMMAND"; exit $s' ERR
0006 IFS=$'\n\t'
0007 
0008 # Go to directory
0009 dir=`dirname $0`/../..
0010 dir=`realpath ${dir}`
0011 cd ${dir}
0012 
0013 # Create log file
0014 log=`basename $0 .sh`
0015 tag=`date +%Y-%m-%d-%H%M`
0016 mkdir -p log
0017 log=log/${log}-${tag}.log
0018 
0019 # Update repository
0020 git pull   | tee -a ${log}
0021 git status | tee -a ${log}
0022 
0023 # Concretize all environments
0024 for env in environments/* ; do
0025 
0026   env=`basename ${env}`
0027 
0028   # Concretize existing environment (allow failure when container exists)
0029   spack env create ${env} environments/${env}/spack.yaml || true
0030   spack env activate ${env}
0031   spack concretize -f
0032   spack install
0033   spack find -c -l
0034   for hash in `spack find -l --no-groups | grep \@ | gawk '{print$1}'` ; do
0035     spack buildcache create --rebuild-index -u -m jlab-public -r -a /${hash}
0036   done | tee -a ${log}
0037   spack env deactivate
0038   spack env remove -y ${env}
0039 
0040 done | tee -a ${log}