.travis.yml 2.16 KB
Newer Older
Peter Drahoš committed
1 2 3
# Travis-CI Build for libgit2
# see travis-ci.org for details

4 5
language: c

6 7 8 9
os:
  - linux
  - osx

10 11 12
compiler:
  - gcc
  - clang
Peter Drahoš committed
13 14 15

# Settings to try
env:
Ben Straub committed
16 17
 global:
  - secure: "YnhS+8n6B+uoyaYfaJ3Lei7cSJqHDPiKJCKFIF2c87YDfmCvAJke8QtE7IzjYDs7UFkTCM4ox+ph2bERUrxZbSCyEkHdjIZpKuMJfYWja/jgMqTMxdyOH9y8JLFbZsSXDIXDwqBlC6vVyl1fP90M35wuWcNTs6tctfVWVofEFbs="
18
  - GITTEST_INVASIVE_FS_SIZE=1
Ben Straub committed
19
 matrix:
20
  - OPTIONS="-DTHREADSAFE=ON -DENABLE_TRACE=ON -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=ON"
21
  - OPTIONS="-DTHREADSAFE=OFF -DBUILD_EXAMPLES=ON -DENABLE_WERROR=ON"
22

23
dist: trusty
24 25 26 27 28
sudo: false

addons:
 apt:
  sources:
29
   - sourceline: 'deb https://dl.bintray.com/libgit2/ci-dependencies trusty libgit2deps'
30
     key_url: 'https://bintray.com/user/downloadSubjectPublicKey?username=bintray'
31 32 33 34 35 36
  packages:
   cmake
   curl
   libcurl3
   libcurl3-gnutls
   libcurl4-gnutls-dev
37
   libssh2-1-dev
38 39 40
   openssh-client
   openssh-server
   valgrind
Arthur Schreiber committed
41

42
matrix:
Ben Straub committed
43
 fast_finish: true
44 45 46
 exclude:
   - os: osx
     compiler: gcc
47
 include:
Ben Straub committed
48 49
   - compiler: gcc
     env: COVERITY=1
50
     os: linux
51
     dist: trusty
52 53 54
   - compiler: gcc
     env:
       - VALGRIND=1
55
         OPTIONS="-DBUILD_CLAR=ON -DBUILD_EXAMPLES=OFF -DDEBUG_POOL=ON -DCMAKE_BUILD_TYPE=Debug"
56
     os: linux
57
     dist: trusty
Ben Straub committed
58
 allow_failures:
59
   - env: COVERITY=1
60

Peter Drahoš committed
61
install:
62
  - if [ -f ./script/install-deps-${TRAVIS_OS_NAME}.sh ]; then ./script/install-deps-${TRAVIS_OS_NAME}.sh; fi
Peter Drahoš committed
63

64
# Run the Build script and tests
Peter Drahoš committed
65
script:
66
 - script/cibuild.sh
Peter Drahoš committed
67 68

# Run Tests
69
after_success:
70
 - if [ "$TRAVIS_OS_NAME" = "linux" -a -n "$VALGRIND" ]; then valgrind --leak-check=full --show-reachable=yes --suppressions=./libgit2_clar.supp _build/libgit2_clar -ionline; fi
Peter Drahoš committed
71

72
# Only watch the development and master branches
Peter Drahoš committed
73 74
branches:
 only:
75
   - master
76
   - /^maint.*/
77

Peter Drahoš committed
78 79
# Notify development list when needed
notifications:
80 81 82 83 84
 irc:
  channels:
    - irc.freenode.net#libgit2
  on_success: change
  on_failure: always
85 86
  use_notice: true
  skip_join: true
87
 campfire:
Vicent Marti committed
88 89 90
  on_success: always
  on_failure: always
  rooms:
Vicent Marti committed
91
   - secure: "sH0dpPWMirbEe7AvLddZ2yOp8rzHalGmv0bYL/LIhVw3JDI589HCYckeLMSB\n3e/FeXw4bn0EqXWEXijVa4ijbilVY6d8oprdqMdWHEodng4KvY5vID3iZSGT\nxylhahO1XHmRynKQLOAvxlc93IlpVW38vQfby8giIY1nkpspb2w="