Update tested CUDA versions
[alexxy/gromacs.git] / admin / containers / buildall.sh
1 #!/bin/bash
2
3 set -ev
4
5 SCRIPT=$PWD/scripted_gmx_docker_builds.py
6
7 # Note: All official GROMACS CI images are built
8 # with openmpi on. That reduces the total number of
9 # images needed, because the same one can test library,
10 # thread and no MPI configurations.
11
12 args[${#args[@]}]="--gcc 10 --clfft --mpi openmpi --ubuntu 20.04"
13 args[${#args[@]}]="--gcc 9 --clfft --mpi openmpi"
14 args[${#args[@]}]="--gcc 10 --cuda 11.2.2 --clfft --mpi openmpi --ubuntu 20.04"
15 args[${#args[@]}]="--gcc 7 --cuda 11.0 --clfft --mpi openmpi --ubuntu 20.04"
16 args[${#args[@]}]="--llvm 8 --tsan"
17 args[${#args[@]}]="--llvm 11 --tsan"
18 args[${#args[@]}]="--llvm 8 --cuda 11.0 --clfft --mpi openmpi --ubuntu 20.04"
19 args[${#args[@]}]="--llvm 9 --clfft --mpi openmpi --ubuntu 18.04"
20 args[${#args[@]}]="--oneapi 2021.1.1"
21 args[${#args[@]}]="--oneapi 2021.2.0 --intel-compute-runtime 21.21.19914 --ubuntu 20.04"
22 args[${#args[@]}]="--llvm --doxygen --mpi openmpi --venvs 3.7.7"
23 args[${#args[@]}]="--llvm 11 --cuda 11.2.1 --hipsycl 2bc21b677a --ubuntu 20.04"
24
25 echo "Building the following images."
26 for arg_string in "${args[@]}"; do
27   # shellcheck disable=SC2086
28   python3 -m utility $arg_string
29 done
30 echo
31
32 for arg_string in "${args[@]}"; do
33   # shellcheck disable=SC2086
34   tag=$(python3 -m utility $arg_string)
35   tags[${#tags[@]}]=$tag
36   # shellcheck disable=SC2086
37   python3 $SCRIPT $arg_string | docker build -t $tag -
38 done
39
40 echo "Run the following to upload the updated images."
41 echo "docker login registry.gitlab.com -u <token name> -p <hash>"
42 for tag in "${tags[@]}"; do
43   echo "docker push $tag"
44 done