| language: c |
| |
| sudo: false |
| |
| cache: |
| directories: |
| - $HOME/travis-cache |
| |
| os: |
| - linux |
| - osx |
| |
| compiler: |
| - clang |
| - gcc |
| |
| addons: |
| apt: |
| packages: |
| - language-pack-is |
| - 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.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-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: Documentation |
| os: linux |
| compiler: clang |
| 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) |
| export GIT_TEST_HTTPD=YesPlease |
| |
| 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" \ |
| "$(brew --repository 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; |
| |
| notifications: |
| email: false |