packaging/perftest/unipi/run-test-remotely.sh: Fixed that cleanup + killing of daemons should always be done + checking if running

This commit is contained in:
rand00 2023-01-17 11:20:41 +01:00
parent e27ca992bf
commit 82622a9b46

View file

@ -37,34 +37,46 @@ SSH="ssh $SERVER"
scp "$BIN" "$SERVER_W_DIR"
scp -r "$PERFSCRIPT_DIR"/* "$SERVER_W_DIR"
#> goto problem: backgrounding a task make it not fail this script :/
cleanup () {
info killing unikernel
$SSH "cd $SERVER_DIR; kill "'$(cat run-unikernel.sh.PID)' || info .. unikernel not running
info killing git daemon
$SSH "cd $SERVER_DIR; kill "'$(cat init.sh.PID)' || info .. git daemon not running
info running cleanup.sh
$SSH "cd $SERVER_DIR; ./cleanup.sh"
}
trap cleanup EXIT
info initializing context for unikernel
$SSH "cd $SERVER_DIR; ./init.sh" &
info sleeping before starting unipi
sleep 5
info checking if git daemon is still running
$SSH "cd $SERVER_DIR; kill -0 "'$(cat init.sh.PID)'
info running unikernel in background
$SSH "cd $SERVER_DIR; ./run-unikernel.sh" &
info sleeping a bit before test
sleep 5
info checking if unikernel is still running
$SSH "cd $SERVER_DIR; kill -0 "'$(cat run-unikernel.sh.PID)'
info running test
$SSH "cd $SERVER_DIR; ./run-test.sh"
info killing unikernel
$SSH "cd $SERVER_DIR; kill "'$(cat run-unikernel.sh.PID)' || echo "couldn't kill: unikernel not running"
info killing init-daemon
$SSH "cd $SERVER_DIR; kill "'$(cat init.sh.PID)' || echo "couldn't kill: git daemon not running"
info copying results to "$PERFDATA_DIR"
if [ ! -e "$PERFDATA_DIR" ]; then
mkdir -p "$PERFDATA_DIR"
fi
scp "${SERVER_W_DIR}/output/*" "$PERFDATA_DIR"/
info running cleanup
$SSH "cd $SERVER_DIR; ./cleanup.sh"
info done
info successfully run test