From: Kees Monshouwer Date: Sun, 29 Jun 2014 10:56:15 +0000 (+0200) Subject: add hybrid mode regression tests X-Git-Tag: auth-3.4.0-rc1~113^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F1492%2Fhead;p=thirdparty%2Fpdns.git add hybrid mode regression tests --- diff --git a/.travis.yml b/.travis.yml index eee49816ee..02f1e70a82 100644 --- a/.travis.yml +++ b/.travis.yml @@ -64,6 +64,7 @@ script: - ./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 diff --git a/regression-tests/backends/bind-master b/regression-tests/backends/bind-master index 172edc82bb..568b25ad0d 100644 --- a/regression-tests/backends/bind-master +++ b/regression-tests/backends/bind-master @@ -1,32 +1,72 @@ case $context in bind) - $RUNWRAPPER $PDNS --daemon=no --local-port=$port --socket-dir=./ \ - --no-shuffle --launch=bind --bind-config=./named.conf \ + cat > pdns-bind.conf << __EOF__ +launch=bind +bind-config=./named.conf +bind-ignore-broken-records=yes +__EOF__ + + $RUNWRAPPER $PDNS --daemon=no --local-port=$port --config-dir=. \ + --config-name=bind --socket-dir=./ --no-shuffle \ --send-root-referral \ - --allow-2136-from=127.0.0.0/8 --experimental-rfc2136=yes \ - --cache-ttl=$cachettl --no-config --experimental-dname-processing \ - --bind-ignore-broken-records=yes --disable-axfr-rectify=yes & + --cache-ttl=$cachettl --experimental-dname-processing \ + --disable-axfr-rectify=yes & skipreasons="nodnssec nodyndns nometa" - bindwait + bindwait bind ;; - bind-dnssec | bind-dnssec-nsec3 | bind-dnssec-nsec3-optout | bind-dnssec-nsec3-narrow) + bind-dnssec | bind-dnssec-nsec3 | bind-hybrid-nsec3 | bind-dnssec-nsec3-optout | bind-dnssec-nsec3-narrow) rm -f dnssec.sqlite3 - ../pdns/pdnssec --config-dir=. create-bind-db dnssec.sqlite3 + cat > pdns-bind.conf << __EOF__ +launch=bind +bind-config=./named.conf +bind-ignore-broken-records=yes +__EOF__ + if [ $context = bind-hybrid-nsec3 ] + then + [ -z "$GMYSQLDB" ] && GMYSQLDB=pdnstest + [ -z "$GMYSQLUSER" ] && GMYSQLUSER=root + [ -z "$GMYSQLHOST" ] && GMYSQLHOST=localhost + [ -z "$GMYSQLPASSWD" ] && GMYSQLPASSWD='' + + mysqladmin --user="$GMYSQLUSER" --password="$GMYSQLPASSWD" --host="$GMYSQLHOST" --force drop "$GMYSQLDB" \ + || echo ignoring mysqladmin drop failure + mysqladmin --user="$GMYSQLUSER" --password="$GMYSQLPASSWD" --host="$GMYSQLHOST" create "$GMYSQLDB" + mysql --user="$GMYSQLUSER" --password="$GMYSQLPASSWD" --host="$GMYSQLHOST" \ + "$GMYSQLDB" < ../modules/gmysqlbackend/schema.mysql.sql + + cat >> pdns-bind.conf << __EOF__ +bind-hybrid +launch+=gmysql +gmysql-dbname=$GMYSQLDB +gmysql-user=$GMYSQLUSER +gmysql-host=$GMYSQLHOST +gmysql-password=$GMYSQLPASSWD +gmysql-dnssec +__EOF__ + else + echo "bind-dnssec-db=./dnssec.sqlite3" >> pdns-bind.conf + ../pdns/pdnssec --config-dir=. --config-name=bind create-bind-db dnssec.sqlite3 + fi for zone in $(grep 'zone ' named.conf | cut -f2 -d\") do - securezone $zone - if [ $context = bind-dnssec-nsec3 ] || [ $context = bind-dnssec-nsec3-optout ] + if [ $context = bind-hybrid-nsec3 ] + then + mysql --user="$GMYSQLUSER" --password="$GMYSQLPASSWD" --host="$GMYSQLHOST" \ + "$GMYSQLDB" -e "INSERT INTO domains (name, type, master) VALUES('$zone','SLAVE','127.0.0.1:$port')" + fi + securezone $zone bind + if [ $context = bind-dnssec-nsec3 ] || [ $context = bind-dnssec-nsec3-optout ] || [ $context = bind-hybrid-nsec3 ] then - ../pdns/pdnssec --config-dir=. set-nsec3 $zone "1 $optout 1 abcd" 2>&1 + ../pdns/pdnssec --config-dir=. --config-name=bind set-nsec3 $zone "1 $optout 1 abcd" 2>&1 elif [ $context = bind-dnssec-nsec3-narrow ] then - ../pdns/pdnssec --config-dir=. set-nsec3 $zone '1 1 1 abcd' narrow 2>&1 + ../pdns/pdnssec --config-dir=. --config-name=bind set-nsec3 $zone '1 1 1 abcd' narrow 2>&1 fi done - if [ $context = bind-dnssec-nsec3 ] + if [ $context = bind-dnssec-nsec3 ] || [ $context = bind-hybrid-nsec3 ] then extracontexts="bind dnssec nsec3" skipreasons="nsec3 nodyndns" @@ -43,17 +83,16 @@ case $context in skipreasons="nodyndns" fi - ../pdns/pdnssec --config-dir=. import-tsig-key test $ALGORITHM $KEY - ../pdns/pdnssec --config-dir=. activate-tsig-key tsig.com test master + ../pdns/pdnssec --config-dir=. --config-name=bind import-tsig-key test $ALGORITHM $KEY + ../pdns/pdnssec --config-dir=. --config-name=bind activate-tsig-key tsig.com test master - $RUNWRAPPER $PDNS --daemon=no --local-port=$port --socket-dir=./ \ - --no-shuffle --launch=bind --bind-config=./named.conf \ - --bind-dnssec-db=./dnssec.sqlite3 \ + $RUNWRAPPER $PDNS --daemon=no --local-port=$port --config-dir=. \ + --config-name=bind --socket-dir=./ --no-shuffle \ --send-root-referral \ - --allow-2136-from=127.0.0.0/8 --experimental-rfc2136=yes --direct-dnskey=yes \ - --cache-ttl=$cachettl --no-config --experimental-dname-processing \ - --bind-ignore-broken-records=yes --disable-axfr-rectify=yes $lua_prequery & - bindwait + --cache-ttl=$cachettl --experimental-dname-processing \ + --disable-axfr-rectify=yes $lua_prequery & + + bindwait bind ;; *) diff --git a/regression-tests/pdns.conf b/regression-tests/pdns.conf deleted file mode 100644 index 4f7e1b9630..0000000000 --- a/regression-tests/pdns.conf +++ /dev/null @@ -1,5 +0,0 @@ -socket-dir=./ -launch=bind -bind-dnssec-db=./dnssec.sqlite3 -bind-config=./named.conf -bind-ignore-broken-records=yes diff --git a/regression-tests/tests/bind-add-zone/command b/regression-tests/tests/bind-add-zone/command index fde5aa88e6..d4a84686b3 100755 --- a/regression-tests/tests/bind-add-zone/command +++ b/regression-tests/tests/bind-add-zone/command @@ -6,10 +6,10 @@ fi cleandig ns1.addzone.com A cleandig ns1.test.com A -../pdns/pdns_control --config-dir=. bind-add-zone addzone.com zones/addzone.com -../pdns/pdns_control --config-dir=. purge addzone.com +../pdns/pdns_control --config-name=bind --socket-dir=. --no-config bind-add-zone addzone.com zones/addzone.com +../pdns/pdns_control --config-name=bind --socket-dir=. --no-config purge addzone.com sleep 1 -../pdns/pdns_control --config-dir=. bind-add-zone addzone.com zones/addzone.com +../pdns/pdns_control --config-name=bind --socket-dir=. --no-config bind-add-zone addzone.com zones/addzone.com sleep 1 cleandig ns1.addzone.com A sleep 1