diff options
-rw-r--r-- | Makefile.ci | 4 | ||||
-rwxr-xr-x | dev/ci/ci-pipe-tee.sh | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/Makefile.ci b/Makefile.ci index 1b09905cc..a5b3b1491 100644 --- a/Makefile.ci +++ b/Makefile.ci @@ -24,9 +24,7 @@ CI_TARGETS=ci-all \ # Generic rule, we use make to easy travis integraton with mixed rules $(CI_TARGETS): ci-%: - rm -f ci-$*.ok - +(./dev/ci/ci-$*.sh 2>&1 && touch ci-$*.ok) | tee time-of-build.log + +./dev/ci/ci-pipe-tee.sh ./dev/ci/ci-$*.sh time-of-build.log echo 'Aggregating timing log...' && echo -en 'travis_fold:start:coq.test.timing\\r' python ./tools/make-one-time-file.py time-of-build.log echo -en 'travis_fold:end:coq.test.timing\\r' - rm ci-$*.ok # must not be -f; we're checking to see that it exists diff --git a/dev/ci/ci-pipe-tee.sh b/dev/ci/ci-pipe-tee.sh new file mode 100755 index 000000000..7b1ccddf2 --- /dev/null +++ b/dev/ci/ci-pipe-tee.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +# Use this script to preserve the exit code of $1 when piping it to +# `tee $2`. We have a separate script, because this only works in +# bash, which we don't require project-wide. + +"$1" 2>&1 | tee "$2" +exit ${PIPESTATUS[0]} |