From 7ed63f6a0634ea310626e3e1405cba1920515e16 Mon Sep 17 00:00:00 2001 From: Vladimir Khlyunev Date: Wed, 13 Feb 2019 17:28:30 +0400 Subject: [PATCH] Stop jenkins agent before destroying slave Change-Id: Ic3197a4130e3ecdc365928dccb9408d85cce7989 --- .../common/scripts/delete_heat_stack.sh | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/maintenance-ci/common/scripts/delete_heat_stack.sh b/maintenance-ci/common/scripts/delete_heat_stack.sh index 0c44074..31862ef 100755 --- a/maintenance-ci/common/scripts/delete_heat_stack.sh +++ b/maintenance-ci/common/scripts/delete_heat_stack.sh @@ -9,15 +9,28 @@ if [ ! -d "${OPENSTACK_CLIENTS_VENV}" ] ; then deactivate fi +function delete_stack() { + if [ -z "${VIRTUAL_ENV}" ]; then + source "${OPENSTACK_CLIENTS_VENV}"/bin/activate + source "${OPENRC_FILE?}" + fi + set +e + eval $(openstack stack output show $1 floating_ip -f shell) + ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no jenkins@$output_value "sudo service jenkins-swarm-agent stop" + openstack stack delete -y "${stack}" + set -e + return +} + source "${OPENSTACK_CLIENTS_VENV}"/bin/activate source "${OPENRC_FILE?}" if [ ! -z "${STACK_NAME}" ] ; then - openstack stack delete -y "${STACK_NAME}" + delete_stack ${STACK_NAME} elif [ ! -z "${STACK_PREFIX}" ] ; then for stack in $(openstack stack list -c 'Stack Name' -f value) ; do if [[ ${stack} == ${STACK_PREFIX}* ]] ; then - openstack stack delete -y "${stack}" + delete_stack ${stack} fi done fi -- 2.45.2