Don't wait on ERROR VM state

Detect ERROR state and exit immediately rather than waiting timeout.

Change-Id: Ib20d03b73123e1390fffcd14fd373c93342bb9d8
This commit is contained in:
Sergii Golovatiuk 2018-12-06 11:59:24 +01:00
parent 59e3d8b1b2
commit d1888ac7cf
1 changed files with 11 additions and 6 deletions

View File

@ -180,15 +180,20 @@ openstack server create \
timeout_seconds=120 timeout_seconds=120
elapsed_seconds=0 elapsed_seconds=0
while true; do while true; do
INSTANCE_ACTIVE=$(openstack server show ${INSTANCE_NAME} -f json | jq -r '.status') INSTANCE_STATUS=$(openstack server show ${INSTANCE_NAME} -f json | jq -r '.status')
if [ "${INSTANCE_ACTIVE}" == "ACTIVE" ]; then case "${INSTANCE_STATUS}" in
echo "${INSTANCE_NAME} reached 'ACTIVE' status" "ACTIVE")
break echo "${INSTANCE_NAME} reached 'ACTIVE' status"
fi break
;;
"ERROR")
echo "${INSTANCE_NAME} failed"
exit 1
esac
sleep 3 sleep 3
elapsed_seconds=$(expr $elapsed_seconds + 3) elapsed_seconds=$(expr $elapsed_seconds + 3)
if [ $elapsed_seconds -ge $timeout_seconds ]; then if [ $elapsed_seconds -ge $timeout_seconds ]; then
echo "FAILURE: Instance failed to boot." echo "FAILURE: Instance failed to boot within ${elapsed_seconds} seconds"
openstack server show ${INSTANCE_NAME} -f json 2>&1 openstack server show ${INSTANCE_NAME} -f json 2>&1
exit 1 exit 1
fi fi