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
- env: jobname=Linux32
os: linux
compiler:
+ addons:
services:
- docker
before_install:
}
# 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
. ${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" ]
# 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 &&
# 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
'
--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)
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=
# Print log
echo ""
echo ""
+set -x
gfwci "action=log&buildId=$BUILD_ID" | cut -c 30-
# Set exit code for TravisCI