.travis.yml 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. sudo: required
  2. dist: trusty
  3. language: c
  4. before_install:
  5. # Trusty related fixed
  6. # multiverse is no on trusty activated (https://github.com/travis-ci/travis-ci/issues/4979)
  7. - sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ trusty multiverse" && sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu/ trusty-updates multiverse"
  8. # /etc/hosts has IPv6 hosts (https://github.com/travis-ci/travis-ci/issues/4978)
  9. - sudo [ $(ip addr show | grep "inet6 ::1" | wc -l) -lt "1" ] && sudo sed -i '/^::1/d' /etc/hosts
  10. # Trusty has running ntpd on localhost, but we don't like that for our tests
  11. - sudo killall -9 ntpd
  12. # Trusty has no swap, lets create some
  13. - sudo fallocate -l 20M /swapfile; sudo chmod 600 /swapfile; sudo mkswap /swapfile; sudo swapon /swapfile
  14. - sudo add-apt-repository -y ppa:waja/trusty-backports
  15. - sudo apt-get update -qq
  16. - sudo apt-get purge -qq gawk
  17. # http://docs.travis-ci.com/user/trusty-ci-environment/ indicates, no MySQL on Trusty (yet)
  18. # # ensure we have a test database in place for tests
  19. # - mysql -e "create database IF NOT EXISTS test;" -uroot
  20. install:
  21. - sudo apt-get install -qq --no-install-recommends perl autotools-dev libdbi-dev libldap2-dev libpq-dev libmysqlclient-dev libfreeradius-client-dev libkrb5-dev libnet-snmp-perl procps
  22. - sudo apt-get install -qq --no-install-recommends libdbi0-dev libdbd-sqlite3 libssl-dev dnsutils snmp-mibs-downloader libsnmp-perl snmpd
  23. - sudo apt-get install -qq --no-install-recommends fping snmp netcat smbclient fping pure-ftpd apache2 postfix libhttp-daemon-ssl-perl
  24. - sudo apt-get install -qq --no-install-recommends slapd ldap-utils
  25. - sudo apt-get install -qq --no-install-recommends autoconf automake
  26. - sudo apt-get install -qq --no-install-recommends faketime
  27. # Trusty related dependencies (not yet provided)
  28. - sudo apt-get install -qq --no-install-recommends mariadb-client mariadb-server
  29. before_script:
  30. # ensure we have a test database in place for tests
  31. - mysql -e "create database IF NOT EXISTS test;" -uroot
  32. # Detect LDAP configuration (seems volatile on trusty env)
  33. - sed -e 's/cn=admin,dc=nodomain/'$(sudo /usr/sbin/slapcat|grep ^dn:|grep cn=|awk '{print $2}')'/' -i plugins/t/NPTest.cache.travis
  34. - tools/setup
  35. - ./configure --enable-libtap
  36. - make
  37. - export NPTEST_CACHE="$(pwd)/plugins/t/NPTest.cache.travis"
  38. - ssh-keygen -t dsa -N "" -f ~/.ssh/id_dsa
  39. - cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
  40. - ssh-keyscan localhost >> ~/.ssh/known_hosts
  41. - touch ~/.ssh/config
  42. - sudo rm -f /usr/share/mibs/ietf/SNMPv2-PDU /usr/share/mibs/ietf/IPSEC-SPD-MIB /usr/share/mibs/ietf/IPATM-IPMC-MIB /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
  43. - sudo mkdir -p /var/lib/snmp/mib_indexes
  44. script:
  45. - if [ "$COVERITY_SCAN_BRANCH" != 1 ]; then make test; fi
  46. notifications:
  47. irc:
  48. channels:
  49. - "chat.freenode.net#Monitoring-Plugins"
  50. on_success: change
  51. on_failure: always
  52. skip_join: true
  53. email:
  54. - team@monitoring-plugins.org
  55. env:
  56. global:
  57. # This is the encrypted COVERITY_SCAN_TOKEN, created via the "travis
  58. # encrypt" command using the project repository's public key.
  59. - secure: "ggJ9c/VfKcwtrwz/My+ne4My7D8g3qi3vz5Hh+yLiri0+oIXCy313ZD6ssIEY/5beQZEOnuHhBgBJd/Y3clSQNc2M9fRNc+wxOkIO992lgnY0MZJN3y9MLfpqUbTClhU9Fst0qXQqGpI6UI8yz1tj7yKi7DPrycJLRrjMpyTfyo="
  60. addons:
  61. coverity_scan:
  62. project:
  63. name: "monitoring-plugins/monitoring-plugins"
  64. description: "Monitoring Plugins"
  65. notification_email: team@monitoring-plugins.org
  66. build_command_prepend: tools/setup && ./configure
  67. build_command: make
  68. branch_pattern: coverity.*