From 4fc38849ea073bec12b8e0a262cd74e2ba5f2de8 Mon Sep 17 00:00:00 2001 From: Wojciech Tyczynski Date: Fri, 29 May 2015 13:01:05 +0200 Subject: [PATCH] Retry downloading tars in case of unpack failure --- cluster/gce/configure-vm.sh | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/cluster/gce/configure-vm.sh b/cluster/gce/configure-vm.sh index 09209a38976..647ef041c61 100644 --- a/cluster/gce/configure-vm.sh +++ b/cluster/gce/configure-vm.sh @@ -437,15 +437,22 @@ function download-release() { # store it when we download, and then when it's different infer that # a push occurred (otherwise it's a simple reboot). - echo "Downloading binary release tar ($SERVER_BINARY_TAR_URL)" - download-or-bust "$SERVER_BINARY_TAR_URL" + # In case of failure of unpacking Salt tree (the last command in the + # "until" block) retry downloading both release and Salt tars. + until + echo "Downloading binary release tar ($SERVER_BINARY_TAR_URL)" + download-or-bust "$SERVER_BINARY_TAR_URL" - echo "Downloading Salt tar ($SALT_TAR_URL)" - download-or-bust "$SALT_TAR_URL" + echo "Downloading Salt tar ($SALT_TAR_URL)" + download-or-bust "$SALT_TAR_URL" - echo "Unpacking Salt tree" - rm -rf kubernetes - tar xzf "${SALT_TAR_URL##*/}" + echo "Unpacking Salt tree" + rm -rf kubernetes + tar xzf "${SALT_TAR_URL##*/}" + do + sleep 15 + echo "Couldn't unpack Salt tree. Retrying..." + done echo "Running release install script" sudo kubernetes/saltbase/install.sh "${SERVER_BINARY_TAR_URL##*/}"