scripts/cthon.zsh

61 lines
1.2 KiB
Bash
Executable File

#!/bin/zsh -e
source common.zsh
TESTS=(-a)
zparseopts -F -K \
a+=TESTS -all+=TESTS \
b+=TESTS -basic+=TESTS \
c:=CLIENT -client:=CLIENT \
-dmesg=DMESG -srvdmesg=SRVDMESG \
g+=TESTS -general+=TESTS \
l+=TESTS -locking+=TESTS \
o+:=MNTOPTS -options+:=MNTOPTS \
p:=MOUNTPOINT -mountpoint:=MOUNTPOINT \
-no-server-access=NO_SERVER_ACCESS \
-krb5=KRB5 \
r:=RDMA -rdma:=RDMA \
S+=TESTS -special+=TESTS \
s:=SERVER -server:=SERVER \
x:=EXPORT -export:=EXPORT \
v+:=VERSION -version+:=VERSION
SEC=(sys)
ARGS=($(echo $MNTOPTS | sed 's/-o /--mntopt /g'))
prepare_to_test
if [[ ${TESTS[(ie)-a]} -le ${#TESTS} ]]; then
TESTS=(-b -g -s -l)
fi
if [ ${#KRB5} -gt 0 ]; then
SEC+=(krb5 krb5i krb5p)
fi
for vers in $VERSION; do
ARGS+=("--version $vers")
done
function run_cthon_zsh()
{
client_run cthon.zsh --server ${SERVER[-1]} --export ${EXPORT[-1]} \
--mountpoint ${MOUNTPOINT[-1]} --user $USER \
--proto $2 --mntopt sec=$3 $1 $ARGS \
| python -u $COLORS/cthon.py
}
ret=0
set +e
date | python -u $COLORS/cthon.py
for test in $TESTS; do
for proto in $PROTO; do
for sec in $SEC; do
run_cthon_zsh $test $proto $sec
ret=$((ret+$?))
done
done
done
exit $ret