From 3be723d4d9816e6b487681d686f87cf41f67abd0 Mon Sep 17 00:00:00 2001 From: Alfredo Deza Date: Tue, 27 Mar 2018 09:50:28 -0400 Subject: [PATCH] ceph-volume tests create a retry script for vagrant reload Signed-off-by: Alfredo Deza --- .../functional/scripts/vagrant_reload.sh | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/ceph-volume/ceph_volume/tests/functional/scripts/vagrant_reload.sh diff --git a/src/ceph-volume/ceph_volume/tests/functional/scripts/vagrant_reload.sh b/src/ceph-volume/ceph_volume/tests/functional/scripts/vagrant_reload.sh new file mode 100644 index 00000000000..3211b066df0 --- /dev/null +++ b/src/ceph-volume/ceph_volume/tests/functional/scripts/vagrant_reload.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +# vagrant-libvirt has a common behavior where it times out when "reloading" vms. Instead +# of calling `vagrant reload` attempt to halt everything, and then start everything, which gives +# this script the ability to try the `vagrant up` again in case of failure +# + +vagrant halt +# This should not really be needed, but in case of a possible race condition between halt +# and up, it might improve things +sleep 5 + + +retries=0 +until [ $retries -ge 5 ] +do + echo "Attempting to start VMs. Attempts: $retries" + timeout 10m vagrant up "$@" && break + retries=$[$retries+1] + sleep 5 +done