summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSZEDER Gábor <szeder.dev@gmail.com>2017-12-27 17:36:03 +0100
committerJunio C Hamano <gitster@pobox.com>2017-12-27 12:15:22 -0800
commit677c70799c70a4e176ff3743c7daafe5193b7b2c (patch)
treed6c400214030abad6f759d44cd7867bf71392667
parent7e72cfceed2e1e74e6bbe8ab41cacda4a66b0e4a (diff)
downloadgit-sg/travis-fixes.tar.gz
travis-ci: only print test failures if there are test results availablesg/travis-fixes
When a build job running the test suite fails, our 'ci/print-test-failures.sh' script scans all 't/test-results/*.exit' files to find failed tests and prints their verbose output. However, if a build job were to fail before it ever gets to run the test suite, then there will be no files to match the above pattern and the shell will take the pattern literally, resulting in errors like this in the trace log: cat: t/test-results/*.exit: No such file or directory ------------------------------------------------------------------------ t/test-results/*.out... ------------------------------------------------------------------------ cat: t/test-results/*.out: No such file or directory Check upfront and proceed only if there are any such files present. Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com> Reviewed-by: Lars Schneider <larsxschneider@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xci/print-test-failures.sh6
1 files changed, 6 insertions, 0 deletions
diff --git a/ci/print-test-failures.sh b/ci/print-test-failures.sh
index 97cc059019..4f261ddc01 100755
--- a/ci/print-test-failures.sh
+++ b/ci/print-test-failures.sh
@@ -8,6 +8,12 @@
# Tracing executed commands would produce too much noise in the loop below.
set +x
+if ! ls t/test-results/*.exit >/dev/null 2>/dev/null
+then
+ echo "Build job failed before the tests could have been run"
+ exit
+fi
+
for TEST_EXIT in t/test-results/*.exit
do
if [ "$(cat "$TEST_EXIT")" != "0" ]