5 SCRIPT=$PWD/scripted_gmx_docker_builds.py
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.
12 args[${#args[@]}]="--gcc 11 --clfft --mpi openmpi --rocm"
13 args[${#args[@]}]="--gcc 11 --cuda 11.4.1 --clfft --mpi openmpi --heffte v2.1.0"
14 args[${#args[@]}]="--gcc 7 --cuda 11.0 --clfft --mpi openmpi --heffte v2.1.0"
15 args[${#args[@]}]="--llvm 11 --cuda 11.4.1"
16 args[${#args[@]}]="--llvm 11 --tsan"
17 args[${#args[@]}]="--llvm 8 --cuda 11.0 --clfft --mpi openmpi"
18 args[${#args[@]}]="--llvm 12 --clfft --mpi openmpi --rocm"
19 args[${#args[@]}]="--oneapi 2021.3.0"
20 args[${#args[@]}]="--oneapi 2021.2.0 --intel-compute-runtime 21.21.19914"
21 args[${#args[@]}]="--llvm --doxygen --mpi openmpi --venvs 3.7.7"
22 args[${#args[@]}]="--llvm 12 --cuda 11.4.1 --hipsycl 4481c03 --rocm 4.3"
24 echo "Building the following images."
25 for arg_string in "${args[@]}"; do
26 # shellcheck disable=SC2086
27 python3 -m utility $arg_string
31 for arg_string in "${args[@]}"; do
32 # shellcheck disable=SC2086
33 tag=$(python3 -m utility $arg_string)
34 tags[${#tags[@]}]=$tag
35 # shellcheck disable=SC2086
36 python3 $SCRIPT $arg_string | docker build -t $tag -
39 echo "Run the following to upload the updated images."
40 echo "docker login registry.gitlab.com -u <token name> -p <hash>"
41 for tag in "${tags[@]}"; do
42 echo "docker push $tag"