diff options
| author | Jenkins <jenkins@review.openstack.org> | 2015-06-25 14:45:12 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2015-06-25 14:45:12 +0000 |
| commit | aa0c8b5fe9b503ef0422af39310761075ca583ec (patch) | |
| tree | c5b5bcede9774aec77d9cfca52b2576492471054 | |
| parent | e8535fc361ab3bc925146c8b2be8e732935040cf (diff) | |
| parent | f370edfb70d30de222e6abf48dda1ec91283bd39 (diff) | |
| download | kolla-aa0c8b5fe9b503ef0422af39310761075ca583ec.tar.gz kolla-aa0c8b5fe9b503ef0422af39310761075ca583ec.zip | |
Merge "Add retry parameter to build-docker-image"
| -rwxr-xr-x | tools/build-docker-image | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/tools/build-docker-image b/tools/build-docker-image index 0f698af39..9bd1d4273 100755 --- a/tools/build-docker-image +++ b/tools/build-docker-image @@ -13,6 +13,7 @@ NAMESPACE=kollaglue PREFIX=centos-rdo- TAG=$(git rev-parse --short HEAD) RELEASE_TAG=latest +MAX_TRIES=1 usage () { cat <<EOF @@ -30,13 +31,14 @@ Options: --pull, -u --release --no-use-released-parent +--retry <number_of_retries> EOF } [ -f $TOPDIR/.buildconf ] && . $TOPDIR/.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" @@ -88,6 +90,11 @@ while :; do USE_CURRENT_TAG=1 ;; + (--retry) + shift + MAX_TRIES=$((MAX_TRIES + $1)) + ;; + (--) break ;; @@ -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_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 echo "ERROR: failed to build $FULLIMAGE" exit 1 fi + rm -rf $TMPDIR echo "Built: $FULLIMAGE" |
