blob: 123e1783c3093a06c16e347480e7a92c0069f580 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
sudo: required
dist: trusty
language: c
env:
global:
# This is the encrypted COVERITY_SCAN_TOKEN, created via the "travis
# encrypt" command using the project repository's public key.
- secure: "ggJ9c/VfKcwtrwz/My+ne4My7D8g3qi3vz5Hh+yLiri0+oIXCy313ZD6ssIEY/5beQZEOnuHhBgBJd/Y3clSQNc2M9fRNc+wxOkIO992lgnY0MZJN3y9MLfpqUbTClhU9Fst0qXQqGpI6UI8yz1tj7yKi7DPrycJLRrjMpyTfyo="
matrix:
include:
- compiler: "gcc"
os: linux
env:
- PLATFORM=linux BITS=64 HOST=x86_64
addons:
coverity_scan:
project:
name: "monitoring-plugins/monitoring-plugins"
description: "Monitoring Plugins"
notification_email: team@monitoring-plugins.org
build_command_prepend: tools/setup && ./configure
build_command: make
branch_pattern: coverity.*
- compiler: "clang"
os: linux
env:
- PLATFORM=linux BITS=64 HOST=x86_64
before_install:
# Trusty related fixed
# multiverse is no on trusty activated (https://github.com/travis-ci/travis-ci/issues/4979)
- sudo apt-get install -qq --no-install-recommends software-properties-common
- 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"
# /etc/hosts has IPv6 hosts (https://github.com/travis-ci/travis-ci/issues/4978)
- sudo [ $(ip addr show | grep "inet6 ::1" | wc -l) -eq "0" ] || sudo sed -i '/^::1/d' /etc/hosts
# Trusty has running ntpd on localhost, but we don't like that for our tests
- "sudo killall -9 ntpd ||:"
# Trusty has no swap, lets create some
- sudo fallocate -l 20M /swapfile; sudo chmod 600 /swapfile; sudo mkswap /swapfile; sudo swapon /swapfile
- sudo add-apt-repository -y ppa:waja/trusty-backports
- sudo apt-get update -qq
- sudo apt-get purge -qq gawk
# http://docs.travis-ci.com/user/trusty-ci-environment/ indicates, no MySQL on Trusty (yet)
# # ensure we have a test database in place for tests
# - mysql -e "create database IF NOT EXISTS test;" -uroot
install:
- sudo apt-get install -qq --no-install-recommends perl autotools-dev libdbi-dev libldap2-dev libpq-dev libmysqlclient-dev libradcli-dev libkrb5-dev libnet-snmp-perl procps
- sudo apt-get install -qq --no-install-recommends libdbi0-dev libdbd-sqlite3 libssl-dev dnsutils snmp-mibs-downloader libsnmp-perl snmpd
- sudo apt-get install -qq --no-install-recommends fping snmp netcat smbclient fping pure-ftpd apache2 ssl-cert postfix libhttp-daemon-ssl-perl
- sudo apt-get install -qq --no-install-recommends libdbd-sybase-perl libnet-dns-perl
- sudo apt-get install -qq --no-install-recommends slapd ldap-utils
- sudo apt-get install -qq --no-install-recommends autoconf automake
- sudo apt-get install -qq --no-install-recommends faketime
- sudo apt-get install -qq --no-install-recommends libmonitoring-plugin-perl
- sudo apt-get install -qq --no-install-recommends squid3
# Trusty related dependencies (not yet provided)
- test "$(dpkg -l | grep -E "mysql-(client|server)-[0-9].[0-9]" | grep -c ^ii)" -gt 0 || sudo apt-get install -qq --no-install-recommends mariadb-client mariadb-server
# enable ssl apache
- sudo a2enmod ssl
- sudo a2ensite default-ssl
- sudo make-ssl-cert generate-default-snakeoil --force-overwrite
- sudo service apache2 reload
- sudo cp tools/squid.conf /etc/squid3/squid.conf
- sudo service squid3 reload
before_script:
# ensure we have a test database in place for tests
- mysql -e "create database IF NOT EXISTS test;" -uroot
# Detect LDAP configuration (seems volatile on trusty env)
- sed -e 's/cn=admin,dc=nodomain/'$(sudo /usr/sbin/slapcat|grep ^dn:|grep cn=|awk '{print $2}')'/' -i plugins/t/NPTest.cache.travis
- tools/setup
- ./configure --enable-libtap
- make
- export NPTEST_CACHE="$(pwd)/plugins/t/NPTest.cache.travis"
- ssh-keygen -t dsa -N "" -f ~/.ssh/id_dsa
- cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
- ssh-keyscan localhost >> ~/.ssh/known_hosts
- touch ~/.ssh/config
- 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
- sudo mkdir -p /var/lib/snmp/mib_indexes
- sudo mkdir /media/ramdisk && sudo chmod 777 /media/ramdisk && sudo mount -t tmpfs -o size=20% none /media/ramdisk
- sed "/host_tls_cert/s/.*/'host_tls_cert' => '$(hostname)',/" -i $NPTEST_CACHE
script:
- if [ "$COVERITY_SCAN_BRANCH" != 1 ]; then make test; fi
notifications:
irc:
channels:
- "chat.freenode.net#Monitoring-Plugins"
on_success: change
on_failure: always
skip_join: true
email:
# - team@monitoring-plugins.org
|