summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml26
-rwxr-xr-xci/install-dependencies.sh8
-rwxr-xr-xci/lib-travisci.sh34
3 files changed, 39 insertions, 29 deletions
diff --git a/.travis.yml b/.travis.yml
index 281f101f31..7c9aa0557e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -21,30 +21,14 @@ addons:
- git-svn
- apache2
-env:
- global:
- - DEVELOPER=1
- # The Linux build installs the defined dependency versions below.
- # The OS X build installs the latest available versions. Keep that
- # in mind when you encounter a broken OS X build!
- - LINUX_P4_VERSION="16.2"
- - LINUX_GIT_LFS_VERSION="1.5.2"
- - DEFAULT_TEST_TARGET=prove
- - GIT_PROVE_OPTS="--timer --jobs 3 --state=failed,slow,save"
- - GIT_TEST_OPTS="--verbose-log"
- - GIT_TEST_CLONE_2GB=YesPlease
- # t9810 occasionally fails on Travis CI OS X
- # t9816 occasionally fails with "TAP out of sequence errors" on Travis CI OS X
- - GIT_SKIP_TESTS="t9810 t9816"
-
matrix:
include:
- - env: GETTEXT_POISON=YesPlease
+ - env: jobname=GETTEXT_POISON
os: linux
compiler:
addons:
before_install:
- - env: Windows
+ - env: jobname=Windows
os: linux
compiler:
addons:
@@ -55,7 +39,7 @@ matrix:
test "$TRAVIS_REPO_SLUG" != "git/git" ||
ci/run-windows-build.sh $TRAVIS_BRANCH $(git rev-parse HEAD)
after_failure:
- - env: Linux32
+ - env: jobname=Linux32
os: linux
compiler:
services:
@@ -63,7 +47,7 @@ matrix:
before_install:
before_script:
script: ci/run-linux32-docker.sh
- - env: Static Analysis
+ - env: jobname=StaticAnalysis
os: linux
compiler:
addons:
@@ -74,7 +58,7 @@ matrix:
before_script:
script: ci/run-static-analysis.sh
after_failure:
- - env: Documentation
+ - env: jobname=Documentation
os: linux
compiler:
addons:
diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index 5bd06fe900..75a9fd2475 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -8,10 +8,8 @@
P4WHENCE=http://filehost.perforce.com/perforce/r$LINUX_P4_VERSION
LFSWHENCE=https://github.com/github/git-lfs/releases/download/v$LINUX_GIT_LFS_VERSION
-case "${TRAVIS_OS_NAME:-linux}" in
-linux)
- export GIT_TEST_HTTPD=YesPlease
-
+case "$jobname" in
+linux-clang|linux-gcc)
mkdir --parents "$P4_PATH"
pushd "$P4_PATH"
wget --quiet "$P4WHENCE/bin.linux26x86_64/p4d"
@@ -26,7 +24,7 @@ linux)
cp git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs .
popd
;;
-osx)
+osx-clang|osx-gcc)
brew update --quiet
# Uncomment this if you want to run perf tests:
# brew install gnu-time
diff --git a/ci/lib-travisci.sh b/ci/lib-travisci.sh
index ac05f1f469..331d3eb3a6 100755
--- a/ci/lib-travisci.sh
+++ b/ci/lib-travisci.sh
@@ -23,14 +23,42 @@ skip_branch_tip_with_tag () {
# Set 'exit on error' for all CI scripts to let the caller know that
# something went wrong
-set -e
+set -ex
skip_branch_tip_with_tag
-case "${TRAVIS_OS_NAME:-linux}" in
-linux)
+if test -z "$jobname"
+then
+ jobname="$TRAVIS_OS_NAME-$CC"
+fi
+
+export DEVELOPER=1
+export DEFAULT_TEST_TARGET=prove
+export GIT_PROVE_OPTS="--timer --jobs 3 --state=failed,slow,save"
+export GIT_TEST_OPTS="--verbose-log"
+export GIT_TEST_CLONE_2GB=YesPlease
+
+case "$jobname" in
+linux-clang|linux-gcc)
+ export GIT_TEST_HTTPD=YesPlease
+
+ # The Linux build installs the defined dependency versions below.
+ # The OS X build installs the latest available versions. Keep that
+ # in mind when you encounter a broken OS X build!
+ export LINUX_P4_VERSION="16.2"
+ export LINUX_GIT_LFS_VERSION="1.5.2"
+
P4_PATH="$(pwd)/custom/p4"
GIT_LFS_PATH="$(pwd)/custom/git-lfs"
export PATH="$GIT_LFS_PATH:$P4_PATH:$PATH"
;;
+osx-clang|osx-gcc)
+ # t9810 occasionally fails on Travis CI OS X
+ # t9816 occasionally fails with "TAP out of sequence errors" on
+ # Travis CI OS X
+ export GIT_SKIP_TESTS="t9810 t9816"
+ ;;
+GETTEXT_POISON)
+ export GETTEXT_POISON=YesPlease
+ ;;
esac