[PATCH v5 5/6] git-p4: add trap to kill p4d on test exit
- From
larsxschneider@gmail.com <larsxschneider@gmail.com>
- Date
- Nov 15, 2015, 13:08 UTC
- Message-ID
- <1447592920-89228-6-git-send-email-larsxschneider@gmail.com>
- In-Reply-To
- <1447592920-89228-1-git-send-email-larsxschneider@gmail.com>
From: Lars Schneider <larsxschneider@gmail.com>
Sometimes the "prove" test runner hangs on test exit because p4d is still running. Add a trap to always kill "p4d" on test exit.
You can reproduce the problem by commenting "P4D_TIMEOUT" in "lib-git-p4.sh" and running "prove ./t9800-git-p4-basic.sh". --- t/lib-git-p4.sh | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/t/lib-git-p4.sh b/t/lib-git-p4.sh index f2a009c..f9c68d4 100644 --- a/t/lib-git-p4.sh +++ b/t/lib-git-p4.sh @@ -65,6 +65,12 @@ cli="$TRASH_DIRECTORY/cli" git="$TRASH_DIRECTORY/git" pidfile="$TRASH_DIRECTORY/p4d.pid" +# Sometimes "prove" seems to hang on exit because p4d is still running +cleanup() { + kill -9 $(cat "$pidfile") 2>/dev/null && exit 255 +} +trap cleanup EXIT + # git p4 submit generates a temp file, which will # not get cleaned up if the submission fails. Don't # clutter up /tmp on the test machine.
-- 2.5.1