From 0b3696811c422265e0a24821f6387a8bcd49fd77 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Wed, 13 May 2026 14:13:27 +0200 Subject: [PATCH 1/3] Workaround for HTTP 502 issues in DUNE/DuMux repositories --- .../tests/dockerfiles/ubuntu_2404/Dockerfile | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/tools/tests/dockerfiles/ubuntu_2404/Dockerfile b/tools/tests/dockerfiles/ubuntu_2404/Dockerfile index 52cba1378..1fc1c5232 100644 --- a/tools/tests/dockerfiles/ubuntu_2404/Dockerfile +++ b/tools/tests/dockerfiles/ubuntu_2404/Dockerfile @@ -235,20 +235,18 @@ COPY --from=precice /home/precice/.local/ /home/precice/.local/ ARG DUNE_VERSION ARG DUMUX_VERSION USER precice -WORKDIR /home/precice -RUN mkdir dumux&&\ - cd dumux&&\ - git clone --depth 1 https://gitlab.dune-project.org/core/dune-common.git -b releases/${DUNE_VERSION} &&\ - git clone --depth 1 https://gitlab.dune-project.org/core/dune-geometry.git -b releases/${DUNE_VERSION} &&\ - git clone --depth 1 https://gitlab.dune-project.org/core/dune-grid.git -b releases/${DUNE_VERSION} &&\ - git clone --depth 1 https://gitlab.dune-project.org/core/dune-istl.git -b releases/${DUNE_VERSION} &&\ - git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-subgrid.git -b releases/${DUNE_VERSION} &&\ - git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b releases/${DUMUX_VERSION} &&\ - git clone -b cell_problems https://git.iws.uni-stuttgart.de/dumux-appl/dumux-phasefield.git &&\ - git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-SPGrid.git -b releases/${DUNE_VERSION} &&\ - git clone --depth 1 https://gitlab.dune-project.org/core/dune-localfunctions.git -b releases/${DUNE_VERSION} WORKDIR /home/precice/dumux ENV PATH="/home/precice/dumux/dune-common/bin:${PATH}" +# This cascade of git clones often led to HTTP 502. Adding some delay and retries in between as a workaround. +RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-common.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-common; done +RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-geometry.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-geometry; done +RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-grid.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-grid; done +RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-istl.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-istl; done +RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-subgrid.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-subgrid; done +RUN for i in $(seq 1 3); do git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b releases/${DUMUX_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dumux; done +RUN for i in $(seq 1 3); do git clone -b cell_problems https://git.iws.uni-stuttgart.de/dumux-appl/dumux-phasefield.git && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dumux-phasefield; done +RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-SPGrid.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-SPGrid; done +RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-localfunctions.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-localfunctions; done # build core DUNE, DuMuX and the adapter ARG DUMUX_ADAPTER_PR ARG DUMUX_ADAPTER_REF From ec0bfed13c9220474caafe76bdf8219982c265ba Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Thu, 14 May 2026 08:01:45 +0200 Subject: [PATCH 2/3] Rework logic --- .../tests/dockerfiles/ubuntu_2404/Dockerfile | 63 ++++++++++++++++--- 1 file changed, 54 insertions(+), 9 deletions(-) diff --git a/tools/tests/dockerfiles/ubuntu_2404/Dockerfile b/tools/tests/dockerfiles/ubuntu_2404/Dockerfile index 1fc1c5232..c0bc12551 100644 --- a/tools/tests/dockerfiles/ubuntu_2404/Dockerfile +++ b/tools/tests/dockerfiles/ubuntu_2404/Dockerfile @@ -238,15 +238,60 @@ USER precice WORKDIR /home/precice/dumux ENV PATH="/home/precice/dumux/dune-common/bin:${PATH}" # This cascade of git clones often led to HTTP 502. Adding some delay and retries in between as a workaround. -RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-common.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-common; done -RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-geometry.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-geometry; done -RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-grid.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-grid; done -RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-istl.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-istl; done -RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-subgrid.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-subgrid; done -RUN for i in $(seq 1 3); do git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b releases/${DUMUX_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dumux; done -RUN for i in $(seq 1 3); do git clone -b cell_problems https://git.iws.uni-stuttgart.de/dumux-appl/dumux-phasefield.git && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dumux-phasefield; done -RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-SPGrid.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-SPGrid; done -RUN for i in $(seq 1 3); do git clone --depth 1 https://gitlab.dune-project.org/core/dune-localfunctions.git -b releases/${DUNE_VERSION} && break && [[ $i -eq 3 ]] && sleep 10 && rm -rf dune-localfunctions; done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-common.git -b releases/${DUNE_VERSION}; then break; fi \ + rm -rf dune-common \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-geometry.git -b releases/${DUNE_VERSION}; then break; fi \ + rm -rf dune-geometry \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-grid.git -b releases/${DUNE_VERSION}; then break; fi \ + rm -rf dune-grid \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-istl.git -b releases/${DUNE_VERSION}; then break; fi \ + rm -rf dune-istl \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-subgrid.git -b releases/${DUNE_VERSION}; then break; fi \ + rm -rf dune-subgrid \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b releases/${DUMUX_VERSION}; then break; fi \ + rm -rf dumux \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone -b cell_problems https://git.iws.uni-stuttgart.de/dumux-appl/dumux-phasefield.git; then break; fi \ + rm -rf dumux-phasefield \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-SPGrid.git -b releases/${DUNE_VERSION}; then break; fi \ + rm -rf dune-SPGrid \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done +RUN for i in $(seq 1 3); do \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-localfunctions.git -b releases/${DUNE_VERSION}; then break; fi \ + rm -rf dune-localfunctions \ + if [[ $i -eq 3 ]]; then exit 1; fi; \ + sleep 10; \ + done # build core DUNE, DuMuX and the adapter ARG DUMUX_ADAPTER_PR ARG DUMUX_ADAPTER_REF From cfe2309b4a42d5ae87ab9f095692bf7930e2ac1d Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Thu, 14 May 2026 08:18:33 +0200 Subject: [PATCH 3/3] Add missing command separators --- .../tests/dockerfiles/ubuntu_2404/Dockerfile | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/tools/tests/dockerfiles/ubuntu_2404/Dockerfile b/tools/tests/dockerfiles/ubuntu_2404/Dockerfile index c0bc12551..f9aabd4c4 100644 --- a/tools/tests/dockerfiles/ubuntu_2404/Dockerfile +++ b/tools/tests/dockerfiles/ubuntu_2404/Dockerfile @@ -239,56 +239,56 @@ WORKDIR /home/precice/dumux ENV PATH="/home/precice/dumux/dune-common/bin:${PATH}" # This cascade of git clones often led to HTTP 502. Adding some delay and retries in between as a workaround. RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://gitlab.dune-project.org/core/dune-common.git -b releases/${DUNE_VERSION}; then break; fi \ - rm -rf dune-common \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-common.git -b releases/${DUNE_VERSION}; then break; fi; \ + rm -rf dune-common; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://gitlab.dune-project.org/core/dune-geometry.git -b releases/${DUNE_VERSION}; then break; fi \ - rm -rf dune-geometry \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-geometry.git -b releases/${DUNE_VERSION}; then break; fi; \ + rm -rf dune-geometry; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://gitlab.dune-project.org/core/dune-grid.git -b releases/${DUNE_VERSION}; then break; fi \ - rm -rf dune-grid \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-grid.git -b releases/${DUNE_VERSION}; then break; fi; \ + rm -rf dune-grid; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://gitlab.dune-project.org/core/dune-istl.git -b releases/${DUNE_VERSION}; then break; fi \ - rm -rf dune-istl \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-istl.git -b releases/${DUNE_VERSION}; then break; fi; \ + rm -rf dune-istl; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-subgrid.git -b releases/${DUNE_VERSION}; then break; fi \ - rm -rf dune-subgrid \ + if git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-subgrid.git -b releases/${DUNE_VERSION}; then break; fi; \ + rm -rf dune-subgrid; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b releases/${DUMUX_VERSION}; then break; fi \ - rm -rf dumux \ + if git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b releases/${DUMUX_VERSION}; then break; fi; \ + rm -rf dumux; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone -b cell_problems https://git.iws.uni-stuttgart.de/dumux-appl/dumux-phasefield.git; then break; fi \ - rm -rf dumux-phasefield \ + if git clone -b cell_problems https://git.iws.uni-stuttgart.de/dumux-appl/dumux-phasefield.git; then break; fi; \ + rm -rf dumux-phasefield; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-SPGrid.git -b releases/${DUNE_VERSION}; then break; fi \ - rm -rf dune-SPGrid \ + if git clone --depth 1 https://gitlab.dune-project.org/extensions/dune-SPGrid.git -b releases/${DUNE_VERSION}; then break; fi; \ + rm -rf dune-SPGrid; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done RUN for i in $(seq 1 3); do \ - if git clone --depth 1 https://gitlab.dune-project.org/core/dune-localfunctions.git -b releases/${DUNE_VERSION}; then break; fi \ - rm -rf dune-localfunctions \ + if git clone --depth 1 https://gitlab.dune-project.org/core/dune-localfunctions.git -b releases/${DUNE_VERSION}; then break; fi; \ + rm -rf dune-localfunctions; \ if [[ $i -eq 3 ]]; then exit 1; fi; \ sleep 10; \ done