aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml1
-rwxr-xr-xci/lib-travisci.sh4
-rwxr-xr-xci/print-test-failures.sh9
-rwxr-xr-xci/run-linux32-build.sh3
-rwxr-xr-xci/run-linux32-docker.sh1
-rwxr-xr-xci/run-windows-build.sh5
6 files changed, 22 insertions, 1 deletions
diff --git a/.travis.yml b/.travis.yml
index 7c9aa0557..4684b3f4f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -42,6 +42,7 @@ matrix:
- env: jobname=Linux32
os: linux
compiler:
+ addons:
services:
- docker
before_install:
diff --git a/ci/lib-travisci.sh b/ci/lib-travisci.sh
index 331d3eb3a..348fe3c3c 100755
--- a/ci/lib-travisci.sh
+++ b/ci/lib-travisci.sh
@@ -22,7 +22,9 @@ skip_branch_tip_with_tag () {
}
# Set 'exit on error' for all CI scripts to let the caller know that
-# something went wrong
+# something went wrong.
+# Set tracing executed commands, primarily setting environment variables
+# and installing dependencies.
set -ex
skip_branch_tip_with_tag
diff --git a/ci/print-test-failures.sh b/ci/print-test-failures.sh
index 8c8973cbf..4f261ddc0 100755
--- a/ci/print-test-failures.sh
+++ b/ci/print-test-failures.sh
@@ -5,6 +5,15 @@
. ${0%/*}/lib-travisci.sh
+# 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" ]
diff --git a/ci/run-linux32-build.sh b/ci/run-linux32-build.sh
index e30fb2cdd..c19c50c1c 100755
--- a/ci/run-linux32-build.sh
+++ b/ci/run-linux32-build.sh
@@ -6,6 +6,8 @@
# run-linux32-build.sh [host-user-id]
#
+set -x
+
# Update packages to the latest available versions
linux32 --32bit i386 sh -c '
apt update >/dev/null &&
@@ -25,6 +27,7 @@ test -z $HOST_UID || (CI_USER="ci" && useradd -u $HOST_UID $CI_USER) &&
# Build and test
linux32 --32bit i386 su -m -l $CI_USER -c '
cd /usr/src/git &&
+ ln -s /tmp/travis-cache/.prove t/.prove &&
make --jobs=2 &&
make --quiet test
'
diff --git a/ci/run-linux32-docker.sh b/ci/run-linux32-docker.sh
index 0edf63acf..3a8b2ba42 100755
--- a/ci/run-linux32-docker.sh
+++ b/ci/run-linux32-docker.sh
@@ -19,5 +19,6 @@ docker run \
--env GIT_TEST_OPTS \
--env GIT_TEST_CLONE_2GB \
--volume "${PWD}:/usr/src/git" \
+ --volume "${HOME}/travis-cache:/tmp/travis-cache" \
daald/ubuntu32:xenial \
/usr/src/git/ci/run-linux32-build.sh $(id -u $USER)
diff --git a/ci/run-windows-build.sh b/ci/run-windows-build.sh
index 8757b3a97..86999268a 100755
--- a/ci/run-windows-build.sh
+++ b/ci/run-windows-build.sh
@@ -69,6 +69,10 @@ esac
echo "Visual Studio Team Services Build #${BUILD_ID}"
+# Tracing execued commands would produce too much noise in the waiting
+# loop below.
+set +x
+
# Wait until build job finished
STATUS=
RESULT=
@@ -90,6 +94,7 @@ done
# Print log
echo ""
echo ""
+set -x
gfwci "action=log&buildId=$BUILD_ID" | cut -c 30-
# Set exit code for TravisCI