From 78f533e425d5c2bb89f3ec89c48d3ae5da215616 Mon Sep 17 00:00:00 2001 From: grev <grev> Date: Wed, 27 Aug 2008 10:49:01 +0000 Subject: [PATCH] b=16798 i=Adilger runbench fix: skip if dbench or client are not found t-f skip fn fix: do not fail if TESTSUITELOG is not found; log fn: escape / --- lustre/tests/rundbench | 17 +++++++++++++---- lustre/tests/test-framework.sh | 4 +++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/lustre/tests/rundbench b/lustre/tests/rundbench index ce51eaff7a..fb21863d97 100755 --- a/lustre/tests/rundbench +++ b/lustre/tests/rundbench @@ -1,5 +1,8 @@ #!/bin/sh +LUSTRE=${LUSTRE:-$(cd $(dirname $0)/..; echo $PWD)} +. $LUSTRE/tests/test-framework.sh + usage() { echo "-C use chroot instead of cd" echo "-D DIR - use 'DIR' as work directory" @@ -7,6 +10,7 @@ usage() { exit; } +PATH=${DBENCH_LIB}:${PATH} MOUNT=${MOUNT:-/mnt/lustre} DIR=${DIR:-$MOUNT/`hostname`} @@ -23,7 +27,7 @@ mkdir -p $DIR TGT=$DIR/client.txt CLIENT_PREFIX="${DBENCH_LIB} /usr/share/dbench /usr/local/share /usr/lib/dbench" CLIENT_FILE="client.txt client_plain.txt dbench_client" -which dbench > /dev/null 2>&1 || { echo "dbench not installed, skip this test" && return 0; } +which dbench > /dev/null 2>&1 || { skip "$0: dbench not installed" && exit 0; } CLIENT="" for prefix in $CLIENT_PREFIX; do @@ -40,15 +44,20 @@ if [ -n "$SRC" -a -s "$SRC" ]; then CLIENT=${SRC} fi -[ ! -s "$TGT" -a -n "$CLIENT" -a -s "$CLIENT" ] && echo "copying $CLIENT to $TGT" && cp $CLIENT $TGT -[ ! -s "$TGT" ] && echo "$0: $TGT doesn't exist (SRC=$CLIENT)" && exit 1 +[ ! -s "$CLIENT" ] && \ + skip "$0: no client file found for dbench DBENCH_LIB=$DBENCH_LIB SRC=$SRC" && \ + exit 0 + +[ ! -s "$TGT" ] && echo "copying $CLIENT to $TGT" && cp $CLIENT $TGT +[ ! -s "$TGT" ] && \ + echo "$0: $TGT file doesn't exist after cp $CLIENT $TGT" && exit 1 if [ "x$CHROOT" == "xyes" ]; then echo "copying necessary libs to $DIR" cp `which dbench` $DIR LIBS71=$(ldd $DIR/dbench|sed -e 's/\t*//' -e 's/.*=> //' -e 's/ .*//' -e 's/^\///') (cd / && tar chf - $LIBS71) | (cd $DIR && tar xvf -) - [ $? = 0 ] && ( echo "can't copy libs $LIBS71 to $DIR" && exit 1 ) + [ $? != 0 ] && echo "can't copy libs $LIBS71 to $DIR" && exit 1 RUN="chroot $DIR" PREFIX="in" PATH=.:/:$PATH diff --git a/lustre/tests/test-framework.sh b/lustre/tests/test-framework.sh index 68d5a5c5d6..208d4b924c 100644 --- a/lustre/tests/test-framework.sh +++ b/lustre/tests/test-framework.sh @@ -1274,7 +1274,8 @@ error_ignore() { skip () { log " SKIP: ${TESTSUITE} ${TESTNAME} $@" - [ "$TESTSUITELOG" ] && echo "${TESTSUITE}: SKIP: $TESTNAME $@" >> $TESTSUITELOG + [ "$TESTSUITELOG" ] && \ + echo "${TESTSUITE}: SKIP: $TESTNAME $@" >> $TESTSUITELOG || true } build_test_filter() { @@ -1371,6 +1372,7 @@ log() { MSG=${MSG//\|/\\\|} MSG=${MSG//\>/\\\>} MSG=${MSG//\</\\\<} + MSG=${MSG//\//\\\/} local NODES=$(nodes_list) for NODE in $NODES; do do_node $NODE $LCTL mark "$MSG" 2> /dev/null || true -- GitLab