From f859b09dae82edb605ece5e2c4db03a48ea83a97 Mon Sep 17 00:00:00 2001 From: "Stefan K. Berg" Date: Sat, 18 Apr 2015 21:55:35 +0200 Subject: [PATCH] Correction of the auto-kill during deploy Jenkins gets stuck until the safety-catch timer expires after three hours when the deploy is successfull. The result code is still correct, but it's an unnecessary delay. JIRA Change-Id: I4fae6b019174744894e223ccfd4502acece95768 Signed-off-by: Stefan K. Berg --- fuel/prototypes/libvirt/deploy/deploy.sh | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/fuel/prototypes/libvirt/deploy/deploy.sh b/fuel/prototypes/libvirt/deploy/deploy.sh index 5d267e6..ba7f7cd 100755 --- a/fuel/prototypes/libvirt/deploy/deploy.sh +++ b/fuel/prototypes/libvirt/deploy/deploy.sh @@ -21,9 +21,14 @@ deployiso=${tmpdir}/deploy.iso exit_handler() { # Remove safety catch - kill $killpid + kill -9 `ps -p $killpid -o pid --no-headers` \ + `ps --ppid $killpid -o pid --no-headers`\ + > /dev/null 2>&1 } +# Set maximum allowed deploy time (default three hours) +MAXDEPLOYTIME=${MAXDEPLOYTIME-3h} + ####### MAIN ######## if [ "`whoami`" != "root" ]; then @@ -59,14 +64,14 @@ if [ ! -f $deafile ]; then fi -# Enable safety catch at three hours -(sleep 3h; kill $$) & +# Enable safety catch +echo "Enabling auto-kill if deployment exceeds $MAXDEPLOYTIME" +(sleep $MAXDEPLOYTIME; echo "Auto-kill of deploy after a timeout of $MAXDEPLOYTIME"; kill $$) & killpid=$! # Enable exit handler trap exit_handler exit - # Stop all VMs for node in controller1 controller2 controller3 compute4 compute5 fuel-master do -- 2.16.6