ci: retry docker builds across proxy outages
This commit is contained in:
@@ -88,10 +88,10 @@ pipeline {
|
||||
|
||||
stage('Build linux-amd64 Image') {
|
||||
steps {
|
||||
retry(2) {
|
||||
sh '''
|
||||
set -euo pipefail
|
||||
$DOCKER_CMD buildx build \
|
||||
for attempt in $(seq 1 6); do
|
||||
if $DOCKER_CMD buildx build \
|
||||
--platform linux/amd64 \
|
||||
--load \
|
||||
--file Dockerfile.backend \
|
||||
@@ -99,9 +99,15 @@ pipeline {
|
||||
--build-arg "VCS_REF=$FULL_SHA" \
|
||||
--build-arg "BUILD_DATE=$BUILD_DATE" \
|
||||
--tag "$IMAGE_REF" \
|
||||
.
|
||||
.; then
|
||||
break
|
||||
fi
|
||||
if [ "$attempt" -ge 6 ]; then
|
||||
exit 1
|
||||
fi
|
||||
sleep $((attempt * 10))
|
||||
done
|
||||
'''
|
||||
}
|
||||
sh '''
|
||||
set -euo pipefail
|
||||
test "$($DOCKER_CMD image inspect "$IMAGE_REF" --format '{{.Os}}/{{.Architecture}}')" = 'linux/amd64'
|
||||
|
||||
Reference in New Issue
Block a user