upstream: Add TEST_REGRESS_CACHE_DIR.
If set, it is used to cache regress test names that have succeeded and skip those on a re-run. OpenBSD-Regress-ID: a7570dd29a58df59f2cca647c3c2ec989b49f247
This commit is contained in:
parent
7394ed80c4
commit
35ef2b3b6e
|
@ -1,4 +1,4 @@
|
|||
# $OpenBSD: test-exec.sh,v 1.89 2022/01/06 22:14:25 dtucker Exp $
|
||||
# $OpenBSD: test-exec.sh,v 1.90 2022/07/04 09:10:31 dtucker Exp $
|
||||
# Placed in the Public Domain.
|
||||
|
||||
#SUDO=sudo
|
||||
|
@ -250,6 +250,30 @@ if [ "x$TEST_REGRESS_LOGFILE" = "x" ]; then
|
|||
TEST_REGRESS_LOGFILE=$OBJ/regress.log
|
||||
fi
|
||||
|
||||
# If set, keep track of successful tests and skip them them if we've
|
||||
# previously completed that test.
|
||||
if [ "x$TEST_REGRESS_CACHE_DIR" != "x" ]; then
|
||||
if [ ! -d "$TEST_REGRESS_CACHE_DIR" ]; then
|
||||
mkdir -p "$TEST_REGRESS_CACHE_DIR"
|
||||
fi
|
||||
TEST="`basename $SCRIPT .sh`"
|
||||
CACHE="${TEST_REGRESS_CACHE_DIR}/${TEST}.cache"
|
||||
for i in ${SSH} ${SSHD} ${SSHAGENT} ${SSHADD} ${SSHKEYGEN} ${SCP} \
|
||||
${SFTP} ${SFTPSERVER} ${SSHKEYSCAN}; do
|
||||
case $i in
|
||||
/*) bin="$i" ;;
|
||||
*) bin="`which $i`" ;;
|
||||
esac
|
||||
if [ "$bin" -nt "$CACHE" ]; then
|
||||
rm -f "$CACHE"
|
||||
fi
|
||||
done
|
||||
if [ -f "$CACHE" ]; then
|
||||
echo ok cached $CACHE
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
|
||||
# truncate logfiles
|
||||
>$TEST_SSH_LOGFILE
|
||||
>$TEST_SSHD_LOGFILE
|
||||
|
@ -763,6 +787,9 @@ fi
|
|||
|
||||
if [ $RESULT -eq 0 ]; then
|
||||
verbose ok $tid
|
||||
if [ "x$CACHE" != "x" ]; then
|
||||
touch "$CACHE"
|
||||
fi
|
||||
else
|
||||
echo failed $tid
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue