diff --git a/.github/workflows/docker_build_tpls.yml b/.github/workflows/docker_build_tpls.yml index 1ab667cf..1f0d96fc 100644 --- a/.github/workflows/docker_build_tpls.yml +++ b/.github/workflows/docker_build_tpls.yml @@ -75,6 +75,12 @@ jobs: - name: Centos (7.7, gcc 8.3.1, open-mpi 1.10.7, cuda 11.8.89) DOCKER_REPOSITORY: geosx/centos7.7-gcc8.3.1-cuda11.8.89 DOCKERFILE: docker/gcc-cuda/Dockerfile + - name: Pangea 3 (AlmaLinux 8.8, gcc 9.4.0, open-mpi 4.1.2, cuda 11.5.0, openblas 0.3.10) + DOCKER_REPOSITORY: geosx/pangea3-almalinux8-gcc9.4-openmpi4.1.2-cuda11.5.0-openblas0.3.18 + DOCKERFILE: docker/TotalEnergies/Pangea3.Dockerfile + HOST_CONFIG: host-configs/TOTAL/pangea3-gcc8.4.1-openmpi-4.1.2.cmake + DOCKER_ROOT_IMAGE: 7g8efcehpff/pangea-almalinux8-gcc9.4-openmpi4.1.2-cuda11.5.0-openblas0.3.18:2 + HOST_ARCH: ppc64le steps: - name: Checkout @@ -96,6 +102,7 @@ jobs: run: printenv - name: Run the docker build and push docker script + if: ${{ matrix.HOST_ARCH }} env: DOCKERFILE: ${{ matrix.DOCKERFILE }} DOCKER_REPOSITORY: ${{ matrix.DOCKER_REPOSITORY }} @@ -107,6 +114,13 @@ jobs: BUILD_NUMBER: ${{ github.run_number }} COMMIT: ${{ github.sha }} BUILD_DIR: ${{ github.workspace }} + + uses: uraimo/run-on-arch-action@v2 + with: + arch: none + distro: none + base_image: ${{ matrix.DOCKER_ROOT_IMAGE }} + run: bash -x ./scripts/docker_build_and_push.sh # Convenience job - passes when all docker images are built. diff --git a/docker/TotalEnergies/Pangea3.Dockerfile b/docker/TotalEnergies/Pangea3.Dockerfile new file mode 100644 index 00000000..21b6cd75 --- /dev/null +++ b/docker/TotalEnergies/Pangea3.Dockerfile @@ -0,0 +1,47 @@ +# The docker base image has to be pangea3-almalinux8-* +ARG DOCKER_ROOT_IMAGE +FROM ${DOCKER_ROOT_IMAGE} as tpl_toolchain_intersect_geosx_toolchain + +ARG INSTALL_DIR +ENV GEOSX_TPL_DIR=${INSTALL_DIR} + +RUN dnf install -y \ + python38-devel \ + zlib-devel + + +RUN dnf install -y \ + make \ + bc \ + file \ + bison \ + flex \ + patch + +ARG TMP_DIR=/tmp +ARG TPL_SRC_DIR=${TMP_DIR}/thirdPartyLibs +ARG TPL_BUILD_DIR=${TMP_DIR}/build + +ARG HOST_CONFIG + +COPY . ${TPL_SRC_DIR} +RUN ${TPL_SRC_DIR}/docker/configure_tpl_build.sh +WORKDIR ${TPL_BUILD_DIR} +RUN make + +FROM tpl_toolchain_intersect_geosx_toolchain AS geosx_toolchain + +COPY --from=tpl_toolchain ${GEOSX_TPL_DIR} ${GEOSX_TPL_DIR} + +#RUN dnf -y install \ +# openssh-clients \ +# texlive \ +# graphviz \ +# libxml2 \ +# git + +#RUN curl -fsSL https://github.com/ninja-build/ninja/releases/download/v1.11.1/ninja-linux.zip | zcat > /usr/local/bin/ninja && chmod +x /usr/local/bin/ninja + +#RUN mkdir -p /opt/sccache/bin && \ +# curl -fsSL https://github.com/mozilla/sccache/releases/download/v0.7.3/sccache-v0.7.3-x86_64-unknown-linux-musl.tar.gz | tar --directory=/opt/sccache/bin --strip-components=1 -xzf - +#ENV SCCACHE=/opt/sccache/bin/sccache