Skip to content
Snippets Groups Projects
Commit f370edfb authored by Martin André's avatar Martin André
Browse files

Add retry parameter to build-docker-image

Partial-Bug: #1466677
Change-Id: I2fc2ded47bb2ed34fb1e272d35b0758f098ce0ac
parent 999a51b6
No related branches found
No related tags found
No related merge requests found
...@@ -13,6 +13,7 @@ NAMESPACE=kollaglue ...@@ -13,6 +13,7 @@ NAMESPACE=kollaglue
PREFIX=centos-rdo- PREFIX=centos-rdo-
TAG=$(git rev-parse --short HEAD) TAG=$(git rev-parse --short HEAD)
RELEASE_TAG=latest RELEASE_TAG=latest
MAX_TRIES=1
usage () { usage () {
cat <<EOF cat <<EOF
...@@ -30,13 +31,14 @@ Options: ...@@ -30,13 +31,14 @@ Options:
--pull, -u --pull, -u
--release --release
--no-use-released-parent --no-use-released-parent
--retry <number_of_retries>
EOF EOF
} }
[ -f $TOPDIR/.buildconf ] && . $TOPDIR/.buildconf [ -f $TOPDIR/.buildconf ] && . $TOPDIR/.buildconf
[ -f $IMGDIR/.buildconf ] && . $IMGDIR/.buildconf [ -f $IMGDIR/.buildconf ] && . $IMGDIR/.buildconf
ARGS=$(getopt -o hr:n:t:pfuN -l help,prefix:,namespace:,push,pull,private-registry:,release,tag:,force-rm,no-cache,no-use-released-parent -- "$@") || { usage >&2; exit 2; } ARGS=$(getopt -o hr:n:t:pfuN -l help,prefix:,namespace:,push,pull,private-registry:,release,tag:,force-rm,no-cache,no-use-released-parent,retry: -- "$@") || { usage >&2; exit 2; }
eval set -- "$ARGS" eval set -- "$ARGS"
...@@ -88,6 +90,11 @@ while :; do ...@@ -88,6 +90,11 @@ while :; do
USE_CURRENT_TAG=1 USE_CURRENT_TAG=1
;; ;;
(--retry)
shift
MAX_TRIES=$((MAX_TRIES + $1))
;;
(--) break (--) break
;; ;;
...@@ -142,10 +149,21 @@ sed -i.bak "s|%%KOLLA_NAMESPACE%%|${NAMESPACE}|g" $TMPDIR/Dockerfile ...@@ -142,10 +149,21 @@ sed -i.bak "s|%%KOLLA_NAMESPACE%%|${NAMESPACE}|g" $TMPDIR/Dockerfile
sed -i.bak "s|%%KOLLA_PREFIX%%|${PREFIX}|g" $TMPDIR/Dockerfile sed -i.bak "s|%%KOLLA_PREFIX%%|${PREFIX}|g" $TMPDIR/Dockerfile
sed -i.bak "s|%%KOLLA_TAG%%|${PARENT_TAG}|g" $TMPDIR/Dockerfile sed -i.bak "s|%%KOLLA_TAG%%|${PARENT_TAG}|g" $TMPDIR/Dockerfile
TRY=0
while [ $((MAX_TRIES - 1)) -gt $TRY ]; do
if docker build ${BUILDFLAGS} -t "$FULLIMAGE" $TMPDIR; then
break
else
echo "WARNING: failed to build $FULLIMAGE, retrying..."
TRY=$((TRY + 1))
fi
done
if ! docker build ${BUILDFLAGS} -t "$FULLIMAGE" $TMPDIR; then if ! docker build ${BUILDFLAGS} -t "$FULLIMAGE" $TMPDIR; then
echo "ERROR: failed to build $FULLIMAGE" echo "ERROR: failed to build $FULLIMAGE"
exit 1 exit 1
fi fi
rm -rf $TMPDIR rm -rf $TMPDIR
echo "Built: $FULLIMAGE" echo "Built: $FULLIMAGE"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment