108 lines
1.9 KiB
Plaintext
108 lines
1.9 KiB
Plaintext
:
|
|
#!/bin/sh
|
|
#
|
|
# @(#)server 1.2 97/01/03 Connectathon testsuite
|
|
# 1.1 Lachman ONC Test Suite source
|
|
#
|
|
# run tests given a server name. mounts, tests, and unmounts
|
|
# arguments:
|
|
# -a|-b|-g|-s|-l test selectors, passed to runtests
|
|
# -f|-t|-n test arguments, passed to runtests
|
|
# mnt_options arg to -o mount options
|
|
# server_path path to mount from server
|
|
# mntpoint path to mount on locally
|
|
# server_name server to mount from
|
|
#
|
|
Program=`basename $0`
|
|
|
|
InitFile="./tests.init"
|
|
USAGE="usage: $Program [-a|-b|-g|-s|-l] [-f|-t|-n|-h] [-o mnt_options] [-p server_path] [-m mntpoint] server_name"
|
|
|
|
# defaults
|
|
. $InitFile
|
|
export PATH CFLAGS LIBS MOUNT UMOUNT
|
|
|
|
set - `getopt abfglhm:no:p:st $*`
|
|
|
|
if [ $? != 0 ]
|
|
then
|
|
echo $USAGE
|
|
exit 1
|
|
fi
|
|
for c in $*
|
|
do
|
|
case $c in
|
|
-a|-b|-g|-s|-l) TEST=$c; shift ;;
|
|
-f|-n|-t) TESTARG=$c; shift ;;
|
|
-h) HARDLINKS=n; export HARDLINKS; shift ;;
|
|
-m) MNTPOINT=$2; shift; shift ;;
|
|
-o) MNTOPTIONS=$2; shift; shift ;;
|
|
-p) SERVPATH=$2; shift; shift ;;
|
|
--) shift; break ;;
|
|
esac
|
|
done
|
|
|
|
if test $# -gt 0
|
|
then
|
|
SERVER=$1
|
|
shift
|
|
if test $# -gt 0
|
|
then
|
|
echo $USAGE
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
# if no server specified, exit
|
|
if test x$SERVER = x
|
|
then
|
|
echo $USAGE
|
|
exit 1
|
|
fi
|
|
|
|
# make sure nothing is mounted on the mountpoint
|
|
eval $UMOUNTCMD > /dev/null 2>&1
|
|
|
|
eval $MOUNTCMD
|
|
|
|
case $? in
|
|
0)
|
|
;;
|
|
*)
|
|
echo "Can't mount $SERVER:$SERVPATH on $MNTPOINT"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
# mount doesn't always return error code if it fails, so lets
|
|
# ask here just in case
|
|
HOSTNAME=`/usr/bsd/hostname`
|
|
HOSTNAME=`expr $HOSTNAME : '\([^.]*\)'`
|
|
NFSTESTDIR=$MNTPOINT/$HOSTNAME.test
|
|
export NFSTESTDIR
|
|
echo $DASHN "Start tests on path $NFSTESTDIR [y/n]?" "$BLC"
|
|
read ans
|
|
case $ans in
|
|
Y*|y*)
|
|
;;
|
|
*)
|
|
echo "Terminating ($MNTPOINT not unmounted)."
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
echo ""
|
|
|
|
echo "sh ./runtests $TEST $TESTARG $NFSTESTDIR"
|
|
sh ./runtests $TEST $TESTARG $NFSTESTDIR
|
|
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo leaving $MNTPOINT mounted
|
|
exit 1
|
|
fi
|
|
|
|
eval $UMOUNTCMD
|
|
|
|
exit 0
|