Update CI containers to oneAPI 2021.4.0
[alexxy/gromacs.git] / admin / containers / buildall.sh
old mode 100644 (file)
new mode 100755 (executable)
index 590b3b8..e7ad2f6
@@ -9,45 +9,35 @@ SCRIPT=$PWD/scripted_gmx_docker_builds.py
 # images needed, because the same one can test library,
 # thread and no MPI configurations.
 
-tag="gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.15.7 --gcc 8 --cuda 10.1 --opencl --clfft --mpi openmpi \
-| docker build -t $tag -
-
-tag="gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.13.0 --gcc 7 --opencl amd --clfft --mpi openmpi | docker build -t $tag -
-
-tag="gromacs/cmake-3.13.0-llvm-8-tsan-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.13.0 --llvm 8 --tsan | docker build -t $tag -
-
-tag="gromacs/cmake-3.15.7-llvm-8-cuda-10.0-openmpi-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.15.7 --llvm 8 --cuda 10.0 --mpi openmpi | docker build -t $tag -
-
-tag="gromacs/cmake-3.15.7-llvm-8-cuda-10.1-openmpi-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.15.7 --llvm 8 --cuda 10.1 --mpi openmpi | docker build -t $tag -
-
-tag="gromacs/cmake-3.15.7-llvm-9-openmpi-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.15.7 --llvm 9 --mpi openmpi | docker build -t $tag -
-
-tag="gromacs/cmake-3.13.0-llvm-9-intelopencl-openmpi-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.13.0 --llvm 9 --opencl intel --mpi openmpi | docker build -t $tag -
-
-tag="gromacs/cmake-3.13.0-llvm-9-amdopencl-openmpi-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.13.0 --llvm 9 --opencl amd --mpi openmpi | docker build -t $tag -
-
-tag="gromacs/ci-docs-llvm-master"
-tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.17.2 --llvm --doxygen | docker build -t $tag -
+args[${#args[@]}]="--gcc 11 --clfft --mpi openmpi --rocm"
+args[${#args[@]}]="--gcc 11 --cuda 11.4.1 --clfft --mpi openmpi --heffte v2.1.0"
+args[${#args[@]}]="--gcc 7 --cuda 11.0 --clfft --mpi openmpi --heffte v2.1.0"
+args[${#args[@]}]="--llvm 11 --cuda 11.4.1"
+args[${#args[@]}]="--llvm 11 --tsan"
+args[${#args[@]}]="--llvm 8 --cuda 11.0 --clfft --mpi openmpi"
+args[${#args[@]}]="--llvm 12 --clfft --mpi openmpi --rocm"
+args[${#args[@]}]="--oneapi 2021.4.0"
+args[${#args[@]}]="--oneapi 2021.4.0 --intel-compute-runtime"
+args[${#args[@]}]="--llvm --doxygen --mpi openmpi --venvs 3.7.7"
+args[${#args[@]}]="--llvm 12 --cuda 11.4.1 --hipsycl 4481c03 --rocm 4.3"
+
+echo "Building the following images."
+for arg_string in "${args[@]}"; do
+  # shellcheck disable=SC2086
+  python3 -m utility $arg_string
+done
+echo
+
+for arg_string in "${args[@]}"; do
+  # shellcheck disable=SC2086
+  tag=$(python3 -m utility $arg_string)
+  tags[${#tags[@]}]=$tag
+  # shellcheck disable=SC2086
+  python3 $SCRIPT $arg_string | docker build -t $tag -
+done
 
 echo "Run the following to upload the updated images."
-echo docker login
+echo "docker login registry.gitlab.com -u <token name> -p <hash>"
 for tag in "${tags[@]}"; do
-  echo docker push $tag
+  echo "docker push $tag"
 done