From 755aba02ac8d7e1377b05dae5f7fee552acf34d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9=20=D0=A1=D0=B0?= =?UTF-8?q?=D0=B1=D0=B8=D0=BB=D0=B8=D0=BD?= Date: Fri, 10 Jul 2026 14:44:50 +0300 Subject: [PATCH] CI: stronger docker retry (5x60s, prune cache, pull, push retry). Co-authored-by: Cursor --- .gitea/workflows/ci.yml | 23 ++++++++++++++--------- scripts/retry-docker-build.sh | 1 + 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index ff85cdc..281fbba 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -28,8 +28,10 @@ jobs: - name: Build eventhub image run: | set -euo pipefail - bash scripts/retry-docker-build.sh 3 30 -- \ + bash scripts/retry-docker-build.sh 5 60 -- \ docker buildx build \ + --network=host \ + --pull \ --file docker/Dockerfile \ --tag eventhub:latest \ --load \ @@ -40,8 +42,10 @@ jobs: - name: Build API test image run: | set -euo pipefail - bash scripts/retry-docker-build.sh 3 30 -- \ + bash scripts/retry-docker-build.sh 5 60 -- \ docker buildx build \ + --network=host \ + --pull \ --file docker/ApiTests.Dockerfile \ --tag eventhub-api-tests:latest \ --load \ @@ -54,11 +58,12 @@ jobs: - name: Login to registry if: github.event_name == 'push' - uses: docker/login-action@v2 - with: - registry: git.sabilin.com - username: ${{ secrets.REGISTRY_USER }} - password: ${{ secrets.REGISTRY_PASSWORD }} + env: + REGISTRY_USER: ${{ secrets.REGISTRY_USER }} + REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }} + run: | + bash scripts/retry-docker-build.sh 5 30 -- \ + bash -c 'echo "${REGISTRY_PASSWORD}" | docker login git.sabilin.com -u "${REGISTRY_USER}" --password-stdin' - name: Push tested eventhub image if: github.event_name == 'push' @@ -67,5 +72,5 @@ jobs: TAG="sha-${GITHUB_SHA:0:12}" docker tag eventhub:latest "${REGISTRY}/eventhub:${TAG}" docker tag eventhub:latest "${REGISTRY}/eventhub:ift" - docker push "${REGISTRY}/eventhub:${TAG}" - docker push "${REGISTRY}/eventhub:ift" + bash scripts/retry-docker-build.sh 5 30 -- docker push "${REGISTRY}/eventhub:${TAG}" + bash scripts/retry-docker-build.sh 5 30 -- docker push "${REGISTRY}/eventhub:ift" diff --git a/scripts/retry-docker-build.sh b/scripts/retry-docker-build.sh index cce2b70..0b0190e 100644 --- a/scripts/retry-docker-build.sh +++ b/scripts/retry-docker-build.sh @@ -28,6 +28,7 @@ while true; do exit "${code}" fi echo "== attempt ${attempt} failed (exit ${code}), retry in ${WAIT}s..." + docker buildx prune -f >/dev/null 2>&1 || true sleep "${WAIT}" attempt=$((attempt + 1)) done