[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH OSSTEST] standalone: Extend -h to support ident=host style specifications
Allowing for multi-host tests. Also make reset-host reset all hosts. Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- standalone | 47 ++++++++++++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 11 deletions(-) diff --git a/standalone b/standalone index e9a74c1..584c07a 100755 --- a/standalone +++ b/standalone @@ -31,15 +31,17 @@ Operations: * reset-host [cf] [JOB] - Allow a job which has been run before to run on a different host - next time. Otherwise osstest will complain if you change the host - which a job is running on on successive runs. + Allow a job which has been run before to run on a different host or + hosts next time. Otherwise osstest will complain if you change the + host(s) which a job is running on on successive runs. Options: -c FILE, --config=FILE Use FILE as configuration file -f FLIGHT, --flight=FLIGHT Operate on FLIGHT --h HOST, --host=HOST Test host +-h HOST, --host=HOST Test host, HOST can also be ident=HOST can + be given multiple times, not that the + order matters in some cases (e.g run-test) -r, --reuse Do not wipe test host (default) -R, --noreuse, --reinstall Wipe the test host (if job or test does so) -s, --simulate, --dry-run Dry run, printing what would be run @@ -76,17 +78,39 @@ else config=$HOME/.xen-osstest/config fi flight="standalone" -host= +hosts= reuse=1 # Don't blow away machines by default dryrun=0 lvextendmax=50 # Leave some LVM space free for running tests nobaseline=y +add_host() { + local h=$1 + case $h in + *=*) + local ident=${h/=*} + h=${h/*=} + hosts="$ident=$h $hosts" + ;; + *) + hosts="host=$h $hosts" + ;; + esac +} + +export_hosts_environ() { + for h in $hosts ; do + local ident=${h/=*} + h=${h/*=} + eval export OSSTEST_HOST_${ident^^}=$h + done +} + while true ; do case "$1" in -c|--config) config=$2; shift 2;; -f|--flight) flight=$2; shift 2;; - -h|--host) host=$2; shift 2;; + -h|--host) add_host $2; shift 2;; -r|--reuse) reuse=1; shift 1;; -R|--noreuse|--reinstall)reuse=0;shift 1;; -s|--simulate|--dry-run)dryrun=1;shift 1;; @@ -111,7 +135,7 @@ if ! ssh-add -l >/dev/null ] ; then fi if [ $reuse -eq 0 ]; then - echo "WARNING: Will blow away machine..." + echo "WARNING: Will blow away machine(s)..." echo "Press ENTER to confirm." read fi @@ -142,7 +166,7 @@ need_flight() { fi } need_host() { - if [ -z "$host" ] ; then + if [ "x$hosts" = x ] ; then echo "run-job: Need a host" >&2 exit 1 fi @@ -240,7 +264,7 @@ case $op in fi job=$1; shift - ./cs-adjust-flight -v $flight runvar-del $job host + ./cs-adjust-flight -v $flight runvar-del $job '/host$' ;; run-job) @@ -253,9 +277,10 @@ case $op in job=$1; shift + export_hosts_environ + OSSTEST_CONFIG=$config \ OSSTEST_FLIGHT=$flight \ - OSSTEST_HOST_HOST=$host \ OSSTEST_HOST_REUSE=$reuse \ OSSTEST_SIMULATE=$dryrun \ with_logging logs/$flight/$job.log ./sg-run-job $job @@ -275,7 +300,7 @@ case $op in OSSTEST_FLIGHT=$flight \ OSSTEST_HOST_REUSE=$reuse \ OSSTEST_JOB=$job \ - with_logging logs/$flight/$job.$ts.log ./$ts host=$host $@ + with_logging logs/$flight/$job.$ts.log ./$ts $hosts $@ ;; *) echo "Unknown op $op" ; exit 1 ;; -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |