.travis.yml: Remove $(nproc).
[collectd.git] / .travis.yml
index 09adb4d..593905d 100644 (file)
-sudo: false
+# Travis CI configuration file
+# https://travis-ci.org/collectd/collectd
+env:
+  global:
+   # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created
+   # via the "travis encrypt" command using the project repo's public key
+   - secure: "ZdWWp0XX3C4sLIp4lqeQTWC7vt+GsWjmyRiD17T9833NBAW4dddz310I6iyeXe6oX09ZFFiVIN4ogx9ANcNBx9jriGXI2/82nBhpxOJBebet8JCNS5VeTr4rDSfQOKP+Oc+ko5KbbghTuAtO2CFYiH3jZUcn4TdsYbVanf+TwUs="
+
+sudo: required
+dist: trusty
+os:
+  - linux
+  - osx
 compiler:
   - gcc
   - clang
-addons:
-  apt:
-    packages:
-      - iptables-dev
-      - libcap-dev
-      - libdbi-dev
-      - libhiredis-dev
-      - libnfnetlink-dev
-      - libnotify-dev
-      - libpcap-dev
-      - libperl-dev
-      - libprotobuf-c0-dev
-      - librrd-dev
-      - libsnmp-dev
-      - libudev-dev
-      - libvarnishapi-dev
-      - libyajl-dev
-      - linux-libc-dev
-      - protobuf-c-compiler
 language: c
-script: sh build.sh && ./configure && make distcheck
+before_install:
+  # When building the coverity_scan branch, allow only the first job to continue to avoid travis-ci/travis-ci#1975.
+  - if [[ "${TRAVIS_BRANCH}" == "coverity_scan" && ! "${TRAVIS_JOB_NUMBER}" =~ \.1$ ]]; then exit 0; fi
+  - if [[ "$TRAVIS_OS_NAME" = "linux" ]]; then
+    sudo apt-get update -qq &&
+    sudo apt-get install -qq --no-install-recommends
+      autotools-dev
+      iptables-dev
+      libatasmart-dev
+      libcap-dev
+      libcurl4-gnutls-dev
+      libdbi0-dev
+      libesmtp-dev
+      libganglia1-dev
+      libgcrypt11-dev
+      libglib2.0-dev
+      libgps-dev
+      libhiredis-dev
+      libi2c-dev
+      libldap2-dev
+      libltdl-dev
+      liblua50-dev
+      liblua5.1-0-dev
+      liblua5.2-dev
+      liblvm2-dev
+      libmemcached-dev
+      libmicrohttpd-dev
+      libmnl-dev
+      libmodbus-dev
+      libmosquitto0-dev
+      libmysqlclient-dev
+      libnotify-dev
+      libopenipmi-dev
+      liboping-dev
+      libow-dev
+      libpcap-dev
+      libperl-dev
+      libpq-dev
+      libprotobuf-c0-dev
+      librabbitmq-dev
+      librdkafka-dev
+      libriemann-client-dev
+      librrd-dev
+      libsensors4-dev
+      libsigrok-dev
+      libsnmp-dev
+      libstatgrab-dev
+      libtokyocabinet-dev
+      libtokyotyrant-dev
+      libudev-dev
+      libupsclient-dev
+      libvarnish-dev
+      libvirt-dev
+      libxen-dev
+      libxml2-dev
+      libyajl-dev
+      linux-libc-dev
+      perl
+      protobuf-c-compiler
+      python3-dev
+      python-dev
+      xfslibs-dev
+    ; fi
+
+  # libgcrypt, libpq & libxml2 are already installed & can't be listed again.
+  # ganglia has a file conflict with coreutils.
+  - if [[ "$TRAVIS_OS_NAME" = "osx" ]]; then
+    brew install
+      curl
+      libdbi
+      glib
+      hiredis
+      openldap
+      lua
+      libmemcached
+      libmicrohttpd
+      libmodbus
+      mosquitto
+      mysql-client
+      libnotify
+      liboping
+      libpcap
+      perl
+      protobuf-c
+      rabbitmq-c
+      librdkafka
+      riemann-client
+      rrdtool
+      net-snmp
+      libstatgrab
+      tokyo-cabinet
+      varnish
+      libvirt
+      yajl
+      protobuf
+      python
+    ; fi
+before_script: autoreconf -fi
+script:
+  - if [[ "${TRAVIS_BRANCH}" == "coverity_scan" ]]; then exit 0; fi
+  - ./configure
+  - make
+  - make check
+
+addons:
+  coverity_scan:
+    project:
+      name: "collectd/collectd"
+      description: "Build submitted via Travis CI"
+    notification_email: collectd-changes@verplant.org
+    build_command_prepend: "./configure; make clean"
+    build_command: "make -j $(nproc)"
+    branch_pattern: coverity_scan