summaryrefslogtreecommitdiff
path: root/.travis.yml
diff options
context:
space:
mode:
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml125
1 files changed, 42 insertions, 83 deletions
diff --git a/.travis.yml b/.travis.yml
index c2b76f9b7e..4d4e26c9df 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -16,105 +16,64 @@ compiler:
addons:
apt:
+ sources:
+ - ubuntu-toolchain-r-test
packages:
- language-pack-is
- git-svn
-
-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.1"
- - LINUX_GIT_LFS_VERSION="1.2.0"
- - DEFAULT_TEST_TARGET=prove
- - GIT_PROVE_OPTS="--timer --jobs 3 --state=failed,slow,save"
- - GIT_TEST_OPTS="--verbose --tee"
- - 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"
+ - apache2
+ - gcc-8
matrix:
include:
- - env: Documentation
+ - env: jobname=GETTEXT_POISON
+ os: linux
+ compiler:
+ addons:
+ before_install:
+ - env: jobname=Windows
+ os: linux
+ compiler:
+ addons:
+ before_install:
+ script:
+ - >
+ test "$TRAVIS_REPO_SLUG" != "git/git" ||
+ ci/run-windows-build.sh $TRAVIS_BRANCH $(git rev-parse HEAD)
+ after_failure:
+ - env: jobname=Linux32
+ os: linux
+ compiler:
+ addons:
+ services:
+ - docker
+ before_install:
+ script: ci/run-linux32-docker.sh
+ - env: jobname=StaticAnalysis
+ os: linux
+ compiler:
+ addons:
+ apt:
+ packages:
+ - coccinelle
+ before_install:
+ script: ci/run-static-analysis.sh
+ after_failure:
+ - env: jobname=Documentation
os: linux
- compiler: clang
+ compiler:
addons:
apt:
packages:
- asciidoc
- xmlto
before_install:
- before_script:
script: ci/test-documentation.sh
after_failure:
-before_install:
- - >
- case "${TRAVIS_OS_NAME:-linux}" in
- linux)
- mkdir --parents custom/p4
- pushd custom/p4
- wget --quiet http://filehost.perforce.com/perforce/r$LINUX_P4_VERSION/bin.linux26x86_64/p4d
- wget --quiet http://filehost.perforce.com/perforce/r$LINUX_P4_VERSION/bin.linux26x86_64/p4
- chmod u+x p4d
- chmod u+x p4
- export PATH="$(pwd):$PATH"
- popd
- mkdir --parents custom/git-lfs
- pushd custom/git-lfs
- wget --quiet https://github.com/github/git-lfs/releases/download/v$LINUX_GIT_LFS_VERSION/git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz
- tar --extract --gunzip --file "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"
- cp git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs .
- export PATH="$(pwd):$PATH"
- popd
- ;;
- osx)
- brew_force_set_latest_binary_hash () {
- FORMULA=$1
- SHA=$(brew fetch --force $FORMULA 2>&1 | grep ^SHA256: | cut -d ' ' -f 2)
- sed -E -i.bak "s/sha256 \"[0-9a-f]{64}\"/sha256 \"$SHA\"/g" \
- /usr/local/Library/Taps/homebrew/homebrew-binary/$FORMULA.rb
- }
- brew update --quiet
- brew tap homebrew/binary --quiet
- brew_force_set_latest_binary_hash perforce
- brew_force_set_latest_binary_hash perforce-server
- # Uncomment this if you want to run perf tests:
- # brew install gnu-time
- brew install git-lfs perforce-server perforce gettext
- brew link --force gettext
- ;;
- esac;
- echo "$(tput setaf 6)Perforce Server Version$(tput sgr0)";
- p4d -V | grep Rev.;
- echo "$(tput setaf 6)Perforce Client Version$(tput sgr0)";
- p4 -V | grep Rev.;
- echo "$(tput setaf 6)Git-LFS Version$(tput sgr0)";
- git-lfs version;
- mkdir -p $HOME/travis-cache;
- ln -s $HOME/travis-cache/.prove t/.prove;
-
-before_script: make --jobs=2
-
-script: make --quiet test
-
-after_failure:
- - >
- : '<-- Click here to see detailed test output! ';
- for TEST_EXIT in t/test-results/*.exit;
- do
- if [ "$(cat "$TEST_EXIT")" != "0" ];
- then
- TEST_OUT="${TEST_EXIT%exit}out";
- echo "------------------------------------------------------------------------";
- echo "$(tput setaf 1)${TEST_OUT}...$(tput sgr0)";
- echo "------------------------------------------------------------------------";
- cat "${TEST_OUT}";
- fi;
- done;
+before_install: ci/install-dependencies.sh
+script: ci/run-build-and-tests.sh
+after_failure: ci/print-test-failures.sh
notifications:
email: false