mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-29 06:35:28 -04:00
Docker: Add generic test and prod files
This commit is contained in:
parent
8579f4eaa4
commit
8e162c4fbc
17 changed files with 778 additions and 6 deletions
|
|
@ -85,6 +85,8 @@ RUN /bin/bash -c " \
|
|||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local_cuda VERSION=psmp && \
|
||||
ln -sf ./cp2k.psmp ./exe/local_cuda/cp2k && \
|
||||
ln -sf ./cp2k_shell.psmp ./exe/local_cuda/cp2k_shell && \
|
||||
rm -rf lib obj exe/local_cuda/libcp2k_unittest.psmp"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
|
|
|
|||
|
|
@ -85,6 +85,8 @@ RUN /bin/bash -c " \
|
|||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local_cuda VERSION=psmp && \
|
||||
ln -sf ./cp2k.psmp ./exe/local_cuda/cp2k && \
|
||||
ln -sf ./cp2k_shell.psmp ./exe/local_cuda/cp2k_shell && \
|
||||
rm -rf lib obj exe/local_cuda/libcp2k_unittest.psmp"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
|
|
|
|||
|
|
@ -85,6 +85,8 @@ RUN /bin/bash -c " \
|
|||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local_cuda VERSION=psmp && \
|
||||
ln -sf ./cp2k.psmp ./exe/local_cuda/cp2k && \
|
||||
ln -sf ./cp2k_shell.psmp ./exe/local_cuda/cp2k_shell && \
|
||||
rm -rf lib obj exe/local_cuda/libcp2k_unittest.psmp"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
|
|
|
|||
97
tools/docker/Dockerfile.prod_generic_pdbg
Normal file
97
tools/docker/Dockerfile.prod_generic_pdbg
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.prod_generic_pdbg ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.pdbg.
|
||||
WORKDIR /opt/cp2k
|
||||
ARG GIT_COMMIT_SHA
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
if [ -n "${GIT_COMMIT_SHA}" ] ; then echo "git:\${GIT_COMMIT_SHA::7}" > REVISION; fi && \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.pdbg ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=pdbg && \
|
||||
ln -sf ./cp2k.pdbg ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.pdbg ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.pdbg"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
RUN /bin/bash -c " \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
./tools/regtesting/do_regtest.py 'local' 'pdbg' "${TESTOPTS}" |& tee regtests.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Setup entry point for production.
|
||||
COPY ./tools/docker/scripts/prod_entrypoint.sh ./
|
||||
WORKDIR /mnt
|
||||
ENTRYPOINT ["/opt/cp2k/prod_entrypoint.sh", "local", "pdbg"]
|
||||
CMD ["cp2k", "--help"]
|
||||
|
||||
#EOF
|
||||
97
tools/docker/Dockerfile.prod_generic_psmp
Normal file
97
tools/docker/Dockerfile.prod_generic_psmp
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.prod_generic_psmp ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.psmp.
|
||||
WORKDIR /opt/cp2k
|
||||
ARG GIT_COMMIT_SHA
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
if [ -n "${GIT_COMMIT_SHA}" ] ; then echo "git:\${GIT_COMMIT_SHA::7}" > REVISION; fi && \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.psmp ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=psmp && \
|
||||
ln -sf ./cp2k.psmp ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.psmp ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.psmp"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
RUN /bin/bash -c " \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
./tools/regtesting/do_regtest.py 'local' 'psmp' "${TESTOPTS}" |& tee regtests.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Setup entry point for production.
|
||||
COPY ./tools/docker/scripts/prod_entrypoint.sh ./
|
||||
WORKDIR /mnt
|
||||
ENTRYPOINT ["/opt/cp2k/prod_entrypoint.sh", "local", "psmp"]
|
||||
CMD ["cp2k", "--help"]
|
||||
|
||||
#EOF
|
||||
97
tools/docker/Dockerfile.prod_generic_sdbg
Normal file
97
tools/docker/Dockerfile.prod_generic_sdbg
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.prod_generic_sdbg ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.sdbg.
|
||||
WORKDIR /opt/cp2k
|
||||
ARG GIT_COMMIT_SHA
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
if [ -n "${GIT_COMMIT_SHA}" ] ; then echo "git:\${GIT_COMMIT_SHA::7}" > REVISION; fi && \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.sdbg ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=sdbg && \
|
||||
ln -sf ./cp2k.sdbg ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.sdbg ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.sdbg"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
RUN /bin/bash -c " \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
./tools/regtesting/do_regtest.py 'local' 'sdbg' "${TESTOPTS}" |& tee regtests.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Setup entry point for production.
|
||||
COPY ./tools/docker/scripts/prod_entrypoint.sh ./
|
||||
WORKDIR /mnt
|
||||
ENTRYPOINT ["/opt/cp2k/prod_entrypoint.sh", "local", "sdbg"]
|
||||
CMD ["cp2k", "--help"]
|
||||
|
||||
#EOF
|
||||
97
tools/docker/Dockerfile.prod_generic_ssmp
Normal file
97
tools/docker/Dockerfile.prod_generic_ssmp
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.prod_generic_ssmp ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.ssmp.
|
||||
WORKDIR /opt/cp2k
|
||||
ARG GIT_COMMIT_SHA
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
if [ -n "${GIT_COMMIT_SHA}" ] ; then echo "git:\${GIT_COMMIT_SHA::7}" > REVISION; fi && \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.ssmp ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=ssmp && \
|
||||
ln -sf ./cp2k.ssmp ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.ssmp ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.ssmp"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
RUN /bin/bash -c " \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
./tools/regtesting/do_regtest.py 'local' 'ssmp' "${TESTOPTS}" |& tee regtests.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Setup entry point for production.
|
||||
COPY ./tools/docker/scripts/prod_entrypoint.sh ./
|
||||
WORKDIR /mnt
|
||||
ENTRYPOINT ["/opt/cp2k/prod_entrypoint.sh", "local", "ssmp"]
|
||||
CMD ["cp2k", "--help"]
|
||||
|
||||
#EOF
|
||||
|
|
@ -73,6 +73,8 @@ RUN /bin/bash -c " \
|
|||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=pdbg && \
|
||||
ln -sf ./cp2k.pdbg ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.pdbg ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.pdbg"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
|
|
|
|||
|
|
@ -73,6 +73,8 @@ RUN /bin/bash -c " \
|
|||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=psmp && \
|
||||
ln -sf ./cp2k.psmp ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.psmp ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.psmp"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
|
|
|
|||
|
|
@ -73,6 +73,8 @@ RUN /bin/bash -c " \
|
|||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=sdbg && \
|
||||
ln -sf ./cp2k.sdbg ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.sdbg ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.sdbg"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
|
|
|
|||
|
|
@ -73,6 +73,8 @@ RUN /bin/bash -c " \
|
|||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
make -j ARCH=local VERSION=ssmp && \
|
||||
ln -sf ./cp2k.ssmp ./exe/local/cp2k && \
|
||||
ln -sf ./cp2k_shell.ssmp ./exe/local/cp2k_shell && \
|
||||
rm -rf lib obj exe/local/libcp2k_unittest.ssmp"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
|
|
|
|||
90
tools/docker/Dockerfile.test_generic_pdbg
Normal file
90
tools/docker/Dockerfile.test_generic_pdbg
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.test_generic_pdbg ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.pdbg.
|
||||
WORKDIR /opt/cp2k
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.pdbg ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
( make -j ARCH=local VERSION=pdbg &> /dev/null || true )"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
COPY ./tools/docker/scripts/test_regtest.sh ./
|
||||
RUN /bin/bash -c " \
|
||||
TESTOPTS="${TESTOPTS}" \
|
||||
./test_regtest.sh 'local' 'pdbg' |& tee report.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Output the report if the image is old and was therefore pulled from the build cache.
|
||||
CMD cat $(find ./report.log -mmin +10) | sed '/^Summary:/ s/$/ (cached)/'
|
||||
|
||||
#EOF
|
||||
90
tools/docker/Dockerfile.test_generic_psmp
Normal file
90
tools/docker/Dockerfile.test_generic_psmp
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.test_generic_psmp ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.psmp.
|
||||
WORKDIR /opt/cp2k
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.psmp ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
( make -j ARCH=local VERSION=psmp &> /dev/null || true )"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
COPY ./tools/docker/scripts/test_regtest.sh ./
|
||||
RUN /bin/bash -c " \
|
||||
TESTOPTS="${TESTOPTS}" \
|
||||
./test_regtest.sh 'local' 'psmp' |& tee report.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Output the report if the image is old and was therefore pulled from the build cache.
|
||||
CMD cat $(find ./report.log -mmin +10) | sed '/^Summary:/ s/$/ (cached)/'
|
||||
|
||||
#EOF
|
||||
90
tools/docker/Dockerfile.test_generic_sdbg
Normal file
90
tools/docker/Dockerfile.test_generic_sdbg
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.test_generic_sdbg ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.sdbg.
|
||||
WORKDIR /opt/cp2k
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.sdbg ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
( make -j ARCH=local VERSION=sdbg &> /dev/null || true )"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
COPY ./tools/docker/scripts/test_regtest.sh ./
|
||||
RUN /bin/bash -c " \
|
||||
TESTOPTS="${TESTOPTS}" \
|
||||
./test_regtest.sh 'local' 'sdbg' |& tee report.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Output the report if the image is old and was therefore pulled from the build cache.
|
||||
CMD cat $(find ./report.log -mmin +10) | sed '/^Summary:/ s/$/ (cached)/'
|
||||
|
||||
#EOF
|
||||
90
tools/docker/Dockerfile.test_generic_ssmp
Normal file
90
tools/docker/Dockerfile.test_generic_ssmp
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
#
|
||||
# This file was created by generate_dockerfiles.py.
|
||||
# Usage: docker build -f ./Dockerfile.test_generic_ssmp ../../
|
||||
#
|
||||
|
||||
FROM ubuntu:20.04
|
||||
|
||||
# Install requirements for the toolchain.
|
||||
WORKDIR /opt/cp2k-toolchain
|
||||
COPY ./tools/toolchain/install_requirements*.sh ./
|
||||
RUN ./install_requirements.sh ubuntu:20.04
|
||||
|
||||
# Install the toolchain.
|
||||
RUN mkdir scripts
|
||||
COPY ./tools/toolchain/scripts/VERSION \
|
||||
./tools/toolchain/scripts/parse_if.py \
|
||||
./tools/toolchain/scripts/tool_kit.sh \
|
||||
./tools/toolchain/scripts/common_vars.sh \
|
||||
./tools/toolchain/scripts/signal_trap.sh \
|
||||
./tools/toolchain/scripts/get_openblas_arch.sh \
|
||||
./scripts/
|
||||
COPY ./tools/toolchain/install_cp2k_toolchain.sh .
|
||||
RUN ./install_cp2k_toolchain.sh \
|
||||
--install-all \
|
||||
--mpi-mode=mpich \
|
||||
--generic \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
# This breaks up the lengthy installation into smaller docker build steps.
|
||||
COPY ./tools/toolchain/scripts/stage0/ ./scripts/stage0/
|
||||
RUN ./scripts/stage0/install_stage0.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage1/ ./scripts/stage1/
|
||||
RUN ./scripts/stage1/install_stage1.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage2/ ./scripts/stage2/
|
||||
RUN ./scripts/stage2/install_stage2.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage3/ ./scripts/stage3/
|
||||
RUN ./scripts/stage3/install_stage3.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage4/ ./scripts/stage4/
|
||||
RUN ./scripts/stage4/install_stage4.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage5/ ./scripts/stage5/
|
||||
RUN ./scripts/stage5/install_stage5.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage6/ ./scripts/stage6/
|
||||
RUN ./scripts/stage6/install_stage6.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage7/ ./scripts/stage7/
|
||||
RUN ./scripts/stage7/install_stage7.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/stage8/ ./scripts/stage8/
|
||||
RUN ./scripts/stage8/install_stage8.sh && rm -rf ./build
|
||||
|
||||
COPY ./tools/toolchain/scripts/arch_base.tmpl \
|
||||
./tools/toolchain/scripts/generate_arch_files.sh \
|
||||
./scripts/
|
||||
RUN ./scripts/generate_arch_files.sh && rm -rf ./build
|
||||
|
||||
# Install CP2K using local.ssmp.
|
||||
WORKDIR /opt/cp2k
|
||||
COPY ./Makefile .
|
||||
COPY ./src ./src
|
||||
COPY ./exts ./exts
|
||||
COPY ./tools/build_utils ./tools/build_utils
|
||||
RUN /bin/bash -c " \
|
||||
mkdir -p arch && \
|
||||
ln -vs /opt/cp2k-toolchain/install/arch/local.ssmp ./arch/ && \
|
||||
echo 'Compiling cp2k...' && \
|
||||
source /opt/cp2k-toolchain/install/setup && \
|
||||
( make -j ARCH=local VERSION=ssmp &> /dev/null || true )"
|
||||
COPY ./data ./data
|
||||
COPY ./tests ./tests
|
||||
COPY ./tools/regtesting ./tools/regtesting
|
||||
|
||||
# Run regression tests.
|
||||
ARG TESTOPTS
|
||||
COPY ./tools/docker/scripts/test_regtest.sh ./
|
||||
RUN /bin/bash -c " \
|
||||
TESTOPTS="${TESTOPTS}" \
|
||||
./test_regtest.sh 'local' 'ssmp' |& tee report.log && \
|
||||
rm -rf regtesting"
|
||||
|
||||
# Output the report if the image is old and was therefore pulled from the build cache.
|
||||
CMD cat $(find ./report.log -mmin +10) | sed '/^Summary:/ s/$/ (cached)/'
|
||||
|
||||
#EOF
|
||||
|
|
@ -20,6 +20,12 @@ def main() -> None:
|
|||
with OutputFile(f"Dockerfile.prod_{version}", args.check) as f:
|
||||
f.write(toolchain_full() + production(version))
|
||||
|
||||
with OutputFile(f"Dockerfile.test_generic_{version}", args.check) as f:
|
||||
f.write(toolchain_full(generic=True) + regtest(version))
|
||||
|
||||
with OutputFile(f"Dockerfile.prod_generic_{version}", args.check) as f:
|
||||
f.write(toolchain_full(generic=True) + production(version))
|
||||
|
||||
with OutputFile(f"Dockerfile.test_openmpi-psmp", args.check) as f:
|
||||
f.write(toolchain_full(mpi_mode="openmpi") + regtest("psmp"))
|
||||
|
||||
|
|
@ -323,6 +329,8 @@ def install_cp2k(
|
|||
|
||||
if prod:
|
||||
run_lines.append(f"make -j ARCH={arch} VERSION={version}")
|
||||
run_lines.append(f"ln -sf ./cp2k.{version} ./exe/{arch}/cp2k")
|
||||
run_lines.append(f"ln -sf ./cp2k_shell.{version} ./exe/{arch}/cp2k_shell")
|
||||
run_lines.append(f"rm -rf lib obj exe/{arch}/libcp2k_unittest.{version}")
|
||||
else:
|
||||
run_lines.append(
|
||||
|
|
@ -345,10 +353,13 @@ COPY ./tools/regtesting ./tools/regtesting
|
|||
|
||||
|
||||
# ======================================================================================
|
||||
def toolchain_full(base_image: str = "ubuntu:20.04", mpi_mode: str = "mpich") -> str:
|
||||
return f"\nFROM {base_image}\n\n" + install_toolchain(
|
||||
base_image=base_image, install_all=None, mpi_mode=mpi_mode
|
||||
)
|
||||
def toolchain_full(
|
||||
base_image: str = "ubuntu:20.04", mpi_mode: str = "mpich", generic: bool = False
|
||||
) -> str:
|
||||
args = dict(install_all=None, mpi_mode=mpi_mode)
|
||||
if generic:
|
||||
args["generic"] = None
|
||||
return f"\nFROM {base_image}\n\n" + install_toolchain(base_image=base_image, **args)
|
||||
|
||||
|
||||
# ======================================================================================
|
||||
|
|
|
|||
|
|
@ -8,14 +8,13 @@ if (($# < 2)); then
|
|||
fi
|
||||
|
||||
ARCH=$1
|
||||
# shellcheck disable=SC2034
|
||||
VERSION=$2
|
||||
shift 2
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
source /opt/cp2k-toolchain/install/setup
|
||||
export PATH="/opt/cp2k/exe/${ARCH}:${PATH}"
|
||||
ln -s "./cp2k.${VERSION}" "/opt/cp2k/exe/${ARCH}/cp2k"
|
||||
ln -s "./cp2k_shell.${VERSION}" "/opt/cp2k/exe/${ARCH}/cp2k_shell"
|
||||
|
||||
"$@"
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue