diff options
| author | Maxime Dénès | 2017-09-07 13:03:19 +0200 |
|---|---|---|
| committer | Maxime Dénès | 2017-09-07 13:03:19 +0200 |
| commit | 695657b3edbd1bf9a1cadbb2c58b9c479b852111 (patch) | |
| tree | ae6dadc183f79bd6f1656e747084efc0ae69d971 | |
| parent | 7034b1188bba2c41de87ce980f5ecfab9d2220f3 (diff) | |
| parent | 7ac81ccfad04b1f0d3bad8f3b596e579b5f37224 (diff) | |
Merge PR #968: Better error messages on the CI
| -rw-r--r-- | Makefile.ci | 7 | ||||
| -rwxr-xr-x | dev/ci/ci-wrapper.sh | 24 |
2 files changed, 25 insertions, 6 deletions
diff --git a/Makefile.ci b/Makefile.ci index 744b7c6550..b5a26d96e8 100644 --- a/Makefile.ci +++ b/Makefile.ci @@ -24,9 +24,4 @@ CI_TARGETS=ci-all \ # Generic rule, we use make to ease travis integration with mixed rules $(CI_TARGETS): ci-%: - rm -f ci-$*.ok - +(./dev/ci/ci-$*.sh 2>&1 && touch ci-$*.ok) | tee 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 + +./dev/ci/ci-wrapper.sh ci-$*.sh diff --git a/dev/ci/ci-wrapper.sh b/dev/ci/ci-wrapper.sh new file mode 100755 index 0000000000..96acc5a11c --- /dev/null +++ b/dev/ci/ci-wrapper.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +# Use this script to preserve the exit code of $CI_SCRIPT when piping +# it to `tee time-of-build.log`. We have a separate script, because +# this only works in bash, which we don't require project-wide. + +set -eo pipefail + +function travis_fold { + if [ -n "${TRAVIS}" ]; + then + echo "travis_fold:$1:$2" + fi +} + +CI_SCRIPT="$1" +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +# assume this script is in dev/ci/, cd to the root Coq directory +cd "${DIR}/../.." + +"${DIR}/${CI_SCRIPT}" 2>&1 | tee time-of-build.log +travis_fold 'start' 'coq.test.timing' && echo 'Aggregating timing log...' +python ./tools/make-one-time-file.py time-of-build.log +travis_fold 'end' 'coq.test.timing' |
