Merge branch 'sg/travis-fixes'
authorJunio C Hamano <gitster@pobox.com>
Tue, 9 Jan 2018 22:32:53 +0000 (14:32 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 9 Jan 2018 22:32:53 +0000 (14:32 -0800)
Assorted updates for TravisCI integration.

* sg/travis-fixes:
travis-ci: only print test failures if there are test results available
travis-ci: save prove state for the 32 bit Linux build
travis-ci: don't install default addon packages for the 32 bit Linux build
travis-ci: fine tune the use of 'set -x' in 'ci/*' scripts

.travis.yml
ci/lib-travisci.sh
ci/print-test-failures.sh
ci/run-linux32-build.sh
ci/run-linux32-docker.sh
ci/run-windows-build.sh
index 7c9aa0557eccad0f04885ba97646d3111d0d4b27..4684b3f4f30f78d5f1d5d0f7eb5bfea9b81861ba 100644 (file)
@@ -42,6 +42,7 @@ matrix:
     - env: jobname=Linux32
       os: linux
       compiler:
+      addons:
       services:
         - docker
       before_install:
index 331d3eb3a6914cd811448e002e8b10ed503e7263..348fe3c3c1d304f9887c24e023a90123ad43d0c8 100755 (executable)
@@ -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
index 8c8973cbf365ed18c1a20b81ec2bcd4a873f62b7..4f261ddc012fb162b7d414b065fe251ceff91bee 100755 (executable)
@@ -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" ]
index e30fb2cddcb59821a90a5c77496664b9a3609113..c19c50c1c9a57c14c07ffe4f5a061bb764e51aeb 100755 (executable)
@@ -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
 '
index 0edf63acfafb77a061cde1225ae3543173a37cd7..3a8b2ba42aeb9a5aaba94830a45329bfe871be73 100755 (executable)
@@ -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)
index 8757b3a97c5d7598bfdb2ec1f42cbb6851bae448..86999268a72c3dc1b81383cdcfe41919dd337e15 100755 (executable)
@@ -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