forked from PowerDNS/pdns
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
109 lines (109 loc) · 5.24 KB
/
.travis.yml
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
99
100
101
102
103
104
105
106
107
108
109
language: cpp
compiler:
- gcc
- clang
before_script:
- git describe --always --dirty=+
- sudo /sbin/ip addr add 10.0.3.0/24 dev lo
- sudo rm /etc/apt/sources.list.d/travis_ci_zeromq3-source.list
- sudo apt-get update
- sudo apt-get install --no-install-recommends libboost-all-dev libtolua-dev bc libcdb-dev libnet-dns-perl unbound-host ldnsutils dnsutils bind9utils libtool libcdb-dev xmlto links asciidoc ruby-json ruby-sqlite3 rubygems libcurl4-openssl-dev ruby1.9.1 socat time libzmq1 libzmq-dev pkg-config daemontools authbind liblua5.1-posix1 libopendbx1-dev libopendbx1-sqlite3 python-virtualenv libldap2-dev softhsm libp11-kit-dev p11-kit moreutils
- sudo sh -c 'sed s/precise/trusty/g /etc/apt/sources.list > /etc/apt/sources.list.d/trusty.list'
- sudo apt-get update
- sudo apt-get install liblmdb0 liblmdb-dev lmdb-utils
- sudo update-alternatives --set ruby /usr/bin/ruby1.9.1
- sudo touch /etc/authbind/byport/53
- sudo chmod 755 /etc/authbind/byport/53
- travis_retry gem install bundler --no-rdoc --no-ri
- cd regression-tests
- wget http://s3.amazonaws.com/alexa-static/top-1m.csv.zip
- unzip top-1m.csv.zip
- cd ..
- cd modules/remotebackend
- travis_retry ruby -S bundle install
- cd ../..
- sudo mkdir -p /etc/pkcs11/modules/
- sudo cp -f regression-tests/softhsm.mod /etc/pkcs11/modules/softhsm
- sudo cp -f regression-tests/softhsm.conf /etc/softhsm/softhsm.conf
- sudo chmod 0755 /etc/softhsm/
- sudo chmod 0644 /etc/softhsm/softhsm.conf
- sudo chmod 0777 /var/lib/softhsm
- p11-kit -l # ensure it's ok
script:
- ./bootstrap
- ./configure --with-modules='bind gmysql gpgsql gsqlite3 mydns tinydns remote random opendbx ldap lmdb' --enable-unit-tests --enable-remotebackend-http --enable-tools --enable-remotebackend-zeromq --enable-experimental-pkcs11
- make -k dist
- make -k -j 4
- DESTDIR=/tmp/pdns-install-dir make -k install
- find /tmp/pdns-install-dir -ls
- travis_retry timeout 240s make -j 4 check # Workaround for remotebackend failures on travis-ci
- make -k -C pdns $(grep '(EXEEXT):' pdns/Makefile | cut -f1 -d\$)
- cd pdns
- make -k -j 4 pdns_recursor
- ./dist-recursor
- make -k -C docs html/index.html manpages
- cd ../regression-tests.recursor
- cp vars.sample vars
- ./config.sh
- ./start.sh
- sleep 3
- svstat configs/*
- ./runtests
- test ! -s ./failed_tests
- ./stop.sh
- sleep 3
- ./clean.sh
- cd ../regression-tests.api
- ./runtests authoritative
- ./runtests recursor
- cd ../regression-tests
- touch tests/verify-dnssec-zone/allow-missing
- touch tests/verify-dnssec-zone/skip.nsec3 # some (travis) tools in this test are unable to handle nsec3 zones
- touch tests/verify-dnssec-zone/skip.optout
- ./timestamp ./start-test-stop 5300 bind-both
- ./timestamp ./start-test-stop 5300 bind-dnssec-both
- ./timestamp ./start-test-stop 5300 bind-dnssec-pkcs11
- ./timestamp ./start-test-stop 5300 bind-dnssec-nsec3-both
- ./timestamp ./start-test-stop 5300 bind-dnssec-nsec3-optout-both
- ./timestamp ./start-test-stop 5300 bind-dnssec-nsec3-narrow
- ./timestamp ./start-test-stop 5300 bind-hybrid-nsec3
- ./timestamp ./start-test-stop 5300 gmysql-nodnssec-both
- ./timestamp ./start-test-stop 5300 gmysql-both
- ./timestamp ./start-test-stop 5300 gmysql-nsec3-both
- ./timestamp ./start-test-stop 5300 gmysql-nsec3-optout-both
- ./timestamp ./start-test-stop 5300 gmysql-nsec3-narrow
- ./timestamp ./start-test-stop 5300 gpgsql-nodnssec-both
- ./timestamp ./start-test-stop 5300 gpgsql-both
- ./timestamp ./start-test-stop 5300 gpgsql-nsec3-both
- ./timestamp ./start-test-stop 5300 gpgsql-nsec3-optout-both
- ./timestamp ./start-test-stop 5300 gpgsql-nsec3-narrow
- ./timestamp ./start-test-stop 5300 gsqlite3-nodnssec-both
- ./timestamp ./start-test-stop 5300 gsqlite3-both
- ./timestamp ./start-test-stop 5300 gsqlite3-nsec3-both
- ./timestamp ./start-test-stop 5300 gsqlite3-nsec3-optout-both
- ./timestamp ./start-test-stop 5300 gsqlite3-nsec3-narrow
- ./timestamp ./start-test-stop 5300 lmdb-nodnssec
- ./timestamp ./start-test-stop 5300 mydns
- ./timestamp ./start-test-stop 5300 opendbx-sqlite3
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-pipe # Workaround for remotebackend failures on travis-ci
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-pipe-dnssec
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-unix
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-unix-dnssec
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-http
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-http-dnssec
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-zeromq
- travis_retry ./timestamp timeout 120s ./start-test-stop 5300 remotebackend-zeromq-dnssec
- ./timestamp ./start-test-stop 5300 tinydns
- THRESHOLD=90 TRACE=no ./timestamp ./recursor-test 5300
- cd ../regression-tests.nobackend/
- ./runtests
- test ! -s ./failed_tests
- cat /tmp/remotebackend.txt.* | sort
notifications:
irc:
channels:
- "irc.oftc.net#powerdns-dev"
template:
- "%{author} @ %{repository} / %{branch} - Build:#%{build_number} : %{message} - Changes: %{compare_url} - Build details: %{build_url}"
use_notice: true
skip_join: true