- 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 libboost-all-dev libtolua-dev bc libcdb-dev libnet-dns-perl unbound-host ldnsutils dnsutils bind9utils libtool libcdb-dev xmlto dblatex 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
+ - 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
- 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
- - gem install bundler --no-rdoc --no-ri
+ - 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
- - ruby -S bundle install
+ - travis_retry ruby -S bundle install
- cd ../..
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
- make dist
- make -j 4
- - make -j 4 check
+ - travis_retry make -j 4 check # Workaround for remotebackend failures on travis-ci
+ - make -C pdns $(grep '(EXEEXT):' pdns/Makefile | cut -f1 -d\$)
- cd pdns
- make -j 4 pdns_recursor
- ./dist-recursor
- - cd docs
- - make
- - cd ../../regression-tests.recursor
+ - make -C docs html/index.html manpages
+ - cd ../regression-tests.recursor
- cp vars.sample vars
- ./config.sh
- ./start.sh
- ./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
- ./start-test-stop 5300 bind-both
- ./start-test-stop 5300 bind-dnssec-both
- ./start-test-stop 5300 bind-dnssec-nsec3-both
- ./start-test-stop 5300 gpgsql-nodnssec
- ./start-test-stop 5300 gpgsql
- ./start-test-stop 5300 gpgsql-nsec3
- - ./start-test-stop 5300 remotebackend-pipe
- - ./start-test-stop 5300 remotebackend-pipe-dnssec
- - ./start-test-stop 5300 remotebackend-unix
- - ./start-test-stop 5300 remotebackend-unix-dnssec
- - ./start-test-stop 5300 remotebackend-http
- - ./start-test-stop 5300 remotebackend-http-dnssec
- - ./start-test-stop 5300 remotebackend-zeromq
- - ./start-test-stop 5300 remotebackend-zeromq-dnssec
- - ./start-test-stop 5300 gsqlite3-nodnssec
- - ./start-test-stop 5300 gsqlite3
- - ./start-test-stop 5300 gsqlite3-nsec3
+ - travis_retry ./start-test-stop 5300 remotebackend-pipe # Workaround for remotebackend failures on travis-ci
+ - travis_retry ./start-test-stop 5300 remotebackend-pipe-dnssec
+ - travis_retry ./start-test-stop 5300 remotebackend-unix
+ - travis_retry ./start-test-stop 5300 remotebackend-unix-dnssec
+ - travis_retry ./start-test-stop 5300 remotebackend-http
+ - travis_retry ./start-test-stop 5300 remotebackend-http-dnssec
+ - travis_retry ./start-test-stop 5300 remotebackend-zeromq
+ - travis_retry ./start-test-stop 5300 remotebackend-zeromq-dnssec
+ - ./start-test-stop 5300 gsqlite3-nodnssec-both
+ - ./start-test-stop 5300 gsqlite3-both
+ - ./start-test-stop 5300 gsqlite3-nsec3-both
- ./start-test-stop 5300 mydns
- ./start-test-stop 5300 tinydns
- ./start-test-stop 5300 opendbx-sqlite3