From 223f466f9e8337f1d0f06e7d6f208a7c5cec608c Mon Sep 17 00:00:00 2001 From: hsc Date: Wed, 11 Apr 2012 16:30:10 +0000 Subject: [PATCH] script to kill stray failbochs instances git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1056 8c4709b5-6ec9-48aa-a5cd-a96041d1645a --- scripts/killall-bochs.sh | 41 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 scripts/killall-bochs.sh diff --git a/scripts/killall-bochs.sh b/scripts/killall-bochs.sh new file mode 100755 index 00000000..7ddb7927 --- /dev/null +++ b/scripts/killall-bochs.sh @@ -0,0 +1,41 @@ +#!/bin/bash +# +# killall-bochs.sh +# Kills all remaining FailBochs instances on $FAIL_EXPERIMENT_HOSTS. +# +# Prerequisites: +# - (possibly overridden) env variables from fail-env.sh +# +# FIXME: unify with runcampaign.sh + +set -e +# determine absolute path of this script +SCRIPTDIR=$(readlink -f $(dirname $0)) +# env variable defaults +source $SCRIPTDIR/fail-env.sh + +CMD="killall -q client.sh" +SSH='ssh -o BatchMode=yes -o ConnectTimeout=60' +CONNECTION_ATTEMPTS=2 + +for h in $FAIL_EXPERIMENT_HOSTS +do + if [[ $h == *:* ]] + then + # split in host:nclients + NCLIENTS=${h#*:} + h=${h%:*} + else + NCLIENTS= + fi + + ( + for i in $(seq $CONNECTION_ATTEMPTS) + do + $SSH $h "$CMD" && break + # failed? sleep 1-10s and retry. + sleep $(($RANDOM / (32768 / 10) + 1)) + echo retrying $h ... + done + ) & +done