aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2015-12-10 12:36:12 -0800
committerJunio C Hamano <gitster@pobox.com>2015-12-10 12:36:12 -0800
commit9eb2449c35c779bedc61b259786b2548e51c8327 (patch)
tree62ba1cb6924f2a4c98d8099a5e159eaff4b5a2e4
parent545299f82224c23978a7c72ae4b7ef1093cd836c (diff)
parent522354d70f4fab744f25bc3d641b478584bbfc3b (diff)
downloadgit-9eb2449c35c779bedc61b259786b2548e51c8327.tar.gz
git-9eb2449c35c779bedc61b259786b2548e51c8327.tar.xz
Merge branch 'ls/travis-yaml'
The necessary infrastructure to build topics using the free Travis CI has been added. Developers forking from this topic (and enabling Travis) can do their own builds, and we can turn on auto-builds for git/git (including build-status for pull requests that people open). * ls/travis-yaml: Add Travis CI support
-rw-r--r--.travis.yml91
1 files changed, 91 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 000000000..c3bf9c6d4
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,91 @@
+language: c
+
+os:
+ - linux
+ - osx
+
+compiler:
+ - clang
+ - gcc
+
+addons:
+ apt:
+ packages:
+ - language-pack-is
+
+env:
+ global:
+ - P4_VERSION="15.2"
+ - GIT_LFS_VERSION="1.1.0"
+ - DEFAULT_TEST_TARGET=prove
+ - GIT_PROVE_OPTS="--timer --jobs 3"
+ - GIT_TEST_OPTS="--verbose --tee"
+ - CFLAGS="-g -O2 -Wall -Werror"
+ - 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"
+
+before_install:
+ - >
+ case "${TRAVIS_OS_NAME:-linux}" in
+ linux)
+ mkdir --parents custom/p4
+ pushd custom/p4
+ wget --quiet http://filehost.perforce.com/perforce/r$P4_VERSION/bin.linux26x86_64/p4d
+ wget --quiet http://filehost.perforce.com/perforce/r$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$GIT_LFS_VERSION/git-lfs-linux-amd64-$GIT_LFS_VERSION.tar.gz
+ tar --extract --gunzip --file "git-lfs-linux-amd64-$GIT_LFS_VERSION.tar.gz"
+ cp git-lfs-$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
+ 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;
+
+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