593905d92e1af9a84400aacb0f501145a1017c16
[collectd.git] / .travis.yml
1 # Travis CI configuration file
2 # https://travis-ci.org/collectd/collectd
3 env:
4   global:
5    # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
6    # via the "travis encrypt" command using the project repo's public key
7    - secure: "ZdWWp0XX3C4sLIp4lqeQTWC7vt+GsWjmyRiD17T9833NBAW4dddz310I6iyeXe6oX09ZFFiVIN4ogx9ANcNBx9jriGXI2/82nBhpxOJBebet8JCNS5VeTr4rDSfQOKP+Oc+ko5KbbghTuAtO2CFYiH3jZUcn4TdsYbVanf+TwUs="
8
9 sudo: required
10 dist: trusty
11 os:
12   - linux
13   - osx
14 compiler:
15   - gcc
16   - clang
17 language: c
18 before_install:
19   # When building the coverity_scan branch, allow only the first job to continue to avoid travis-ci/travis-ci#1975.
20   - if [[ "${TRAVIS_BRANCH}" == "coverity_scan" && ! "${TRAVIS_JOB_NUMBER}" =~ \.1$ ]]; then exit 0; fi
21   - if [[ "$TRAVIS_OS_NAME" = "linux" ]]; then
22     sudo apt-get update -qq &&
23     sudo apt-get install -qq --no-install-recommends
24       autotools-dev
25       iptables-dev
26       libatasmart-dev
27       libcap-dev
28       libcurl4-gnutls-dev
29       libdbi0-dev
30       libesmtp-dev
31       libganglia1-dev
32       libgcrypt11-dev
33       libglib2.0-dev
34       libgps-dev
35       libhiredis-dev
36       libi2c-dev
37       libldap2-dev
38       libltdl-dev
39       liblua50-dev
40       liblua5.1-0-dev
41       liblua5.2-dev
42       liblvm2-dev
43       libmemcached-dev
44       libmicrohttpd-dev
45       libmnl-dev
46       libmodbus-dev
47       libmosquitto0-dev
48       libmysqlclient-dev
49       libnotify-dev
50       libopenipmi-dev
51       liboping-dev
52       libow-dev
53       libpcap-dev
54       libperl-dev
55       libpq-dev
56       libprotobuf-c0-dev
57       librabbitmq-dev
58       librdkafka-dev
59       libriemann-client-dev
60       librrd-dev
61       libsensors4-dev
62       libsigrok-dev
63       libsnmp-dev
64       libstatgrab-dev
65       libtokyocabinet-dev
66       libtokyotyrant-dev
67       libudev-dev
68       libupsclient-dev
69       libvarnish-dev
70       libvirt-dev
71       libxen-dev
72       libxml2-dev
73       libyajl-dev
74       linux-libc-dev
75       perl
76       protobuf-c-compiler
77       python3-dev
78       python-dev
79       xfslibs-dev
80     ; fi
81
82   # libgcrypt, libpq & libxml2 are already installed & can't be listed again.
83   # ganglia has a file conflict with coreutils.
84   - if [[ "$TRAVIS_OS_NAME" = "osx" ]]; then
85     brew install
86       curl
87       libdbi
88       glib
89       hiredis
90       openldap
91       lua
92       libmemcached
93       libmicrohttpd
94       libmodbus
95       mosquitto
96       mysql-client
97       libnotify
98       liboping
99       libpcap
100       perl
101       protobuf-c
102       rabbitmq-c
103       librdkafka
104       riemann-client
105       rrdtool
106       net-snmp
107       libstatgrab
108       tokyo-cabinet
109       varnish
110       libvirt
111       yajl
112       protobuf
113       python
114     ; fi
115 before_script: autoreconf -fi
116 script:
117   - if [[ "${TRAVIS_BRANCH}" == "coverity_scan" ]]; then exit 0; fi
118   - ./configure
119   - make
120   - make check
121
122 addons:
123   coverity_scan:
124     project:
125       name: "collectd/collectd"
126       description: "Build submitted via Travis CI"
127     notification_email: collectd-changes@verplant.org
128     build_command_prepend: "./configure; make clean"
129     build_command: "make -j $(nproc)"
130     branch_pattern: coverity_scan