]> git.ipfire.org Git - thirdparty/git.git/blob - .travis.yml
Merge branch 'jt/fetch-pack-error-reporting'
[thirdparty/git.git] / .travis.yml
1 language: c
2
3 sudo: false
4
5 cache:
6 directories:
7 - $HOME/travis-cache
8
9 os:
10 - linux
11 - osx
12
13 compiler:
14 - clang
15 - gcc
16
17 addons:
18 apt:
19 packages:
20 - language-pack-is
21 - git-svn
22 - apache2
23
24 env:
25 global:
26 - DEVELOPER=1
27 # The Linux build installs the defined dependency versions below.
28 # The OS X build installs the latest available versions. Keep that
29 # in mind when you encounter a broken OS X build!
30 - LINUX_P4_VERSION="16.2"
31 - LINUX_GIT_LFS_VERSION="1.5.2"
32 - DEFAULT_TEST_TARGET=prove
33 - GIT_PROVE_OPTS="--timer --jobs 3 --state=failed,slow,save"
34 - GIT_TEST_OPTS="--verbose-log"
35 - GIT_TEST_CLONE_2GB=YesPlease
36 # t9810 occasionally fails on Travis CI OS X
37 # t9816 occasionally fails with "TAP out of sequence errors" on Travis CI OS X
38 - GIT_SKIP_TESTS="t9810 t9816"
39
40 matrix:
41 include:
42 - env: Windows
43 os: linux
44 compiler:
45 addons:
46 before_install:
47 before_script:
48 script:
49 - >
50 test "$TRAVIS_REPO_SLUG" != "git/git" ||
51 ci/run-windows-build.sh $TRAVIS_BRANCH $(git rev-parse HEAD)
52 after_failure:
53 - env: Linux32
54 os: linux
55 services:
56 - docker
57 before_install:
58 - docker pull daald/ubuntu32:xenial
59 before_script:
60 script:
61 - >
62 docker run
63 --interactive
64 --env DEFAULT_TEST_TARGET
65 --env GIT_PROVE_OPTS
66 --env GIT_TEST_OPTS
67 --env GIT_TEST_CLONE_2GB
68 --volume "${PWD}:/usr/src/git"
69 daald/ubuntu32:xenial
70 /usr/src/git/ci/run-linux32-build.sh $(id -u $USER)
71 # Use the following command to debug the docker build locally:
72 # $ docker run -itv "${PWD}:/usr/src/git" --entrypoint /bin/bash daald/ubuntu32:xenial
73 # root@container:/# /usr/src/git/ci/run-linux32-build.sh
74 - env: Documentation
75 os: linux
76 compiler: clang
77 addons:
78 apt:
79 packages:
80 - asciidoc
81 - xmlto
82 before_install:
83 before_script:
84 script: ci/test-documentation.sh
85 after_failure:
86
87 before_install:
88 - >
89 case "${TRAVIS_OS_NAME:-linux}" in
90 linux)
91 export GIT_TEST_HTTPD=YesPlease
92
93 mkdir --parents custom/p4
94 pushd custom/p4
95 wget --quiet http://filehost.perforce.com/perforce/r$LINUX_P4_VERSION/bin.linux26x86_64/p4d
96 wget --quiet http://filehost.perforce.com/perforce/r$LINUX_P4_VERSION/bin.linux26x86_64/p4
97 chmod u+x p4d
98 chmod u+x p4
99 export PATH="$(pwd):$PATH"
100 popd
101 mkdir --parents custom/git-lfs
102 pushd custom/git-lfs
103 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
104 tar --extract --gunzip --file "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"
105 cp git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs .
106 export PATH="$(pwd):$PATH"
107 popd
108 ;;
109 osx)
110 brew update --quiet
111 # Uncomment this if you want to run perf tests:
112 # brew install gnu-time
113 brew install git-lfs gettext
114 brew link --force gettext
115 brew install caskroom/cask/perforce
116 ;;
117 esac;
118 echo "$(tput setaf 6)Perforce Server Version$(tput sgr0)";
119 p4d -V | grep Rev.;
120 echo "$(tput setaf 6)Perforce Client Version$(tput sgr0)";
121 p4 -V | grep Rev.;
122 echo "$(tput setaf 6)Git-LFS Version$(tput sgr0)";
123 git-lfs version;
124 mkdir -p $HOME/travis-cache;
125 ln -s $HOME/travis-cache/.prove t/.prove;
126
127 before_script: make --jobs=2
128
129 script: make --quiet test
130
131 after_failure:
132 - >
133 : '<-- Click here to see detailed test output! ';
134 for TEST_EXIT in t/test-results/*.exit;
135 do
136 if [ "$(cat "$TEST_EXIT")" != "0" ];
137 then
138 TEST_OUT="${TEST_EXIT%exit}out";
139 echo "------------------------------------------------------------------------";
140 echo "$(tput setaf 1)${TEST_OUT}...$(tput sgr0)";
141 echo "------------------------------------------------------------------------";
142 cat "${TEST_OUT}";
143 fi;
144 done;
145
146 notifications:
147 email: false