]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
use pdnssec for tsig keys and metadata in tests
authorKees Monshouwer <mind04@monshouwer.org>
Mon, 14 Apr 2014 06:47:38 +0000 (08:47 +0200)
committermind04 <mind04@monshouwer.org>
Mon, 14 Apr 2014 06:59:47 +0000 (08:59 +0200)
regression-tests/backends/gmysql-slave
regression-tests/backends/goracle-slave
regression-tests/backends/gpgsql-slave
regression-tests/backends/gsqlite3-slave

index 3af5c7e2f2a7ef32b2e97fd283975a92f80453e6..76ba3b71c479acfa0d5b73155f4833ac0976e2b3 100644 (file)
@@ -4,47 +4,45 @@
        [ -z "$GMYSQL2HOST" ] && GMYSQL2HOST=localhost
        [ -z "$GMYSQL2PASSWD" ] && GMYSQL2PASSWD=''
 
-       mysqladmin --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" --force drop "$GMYSQL2DB" \
-               || echo ignoring mysqladmin drop failure
-       mysqladmin --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" create "$GMYSQL2DB"
+       mysqladmin --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" \
+               --force drop "$GMYSQL2DB" || echo ignoring mysqladmin drop failure
+       mysqladmin --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" \
+               create "$GMYSQL2DB"
        mysql --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" \
                "$GMYSQL2DB" < ../modules/gmysqlbackend/schema.mysql.sql
 
+       cat > pdns-gmysql2.conf << __EOF__
+launch=gmysql
+gmysql-dbname=$GMYSQL2DB
+gmysql-user=$GMYSQL2USER
+gmysql-host=$GMYSQL2HOST
+gmysql-password=$GMYSQL2PASSWD
+gmysql-dnssec
+__EOF__
+
        for zone in $(grep 'zone ' named.conf  | cut -f2 -d\" | tac)
        do
                mysql --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" \
-               "$GMYSQL2DB" \
-               -e "INSERT INTO domains (name, type, master) VALUES('$zone','SLAVE','127.0.0.1:$port')"
+                       "$GMYSQL2DB" -e "INSERT INTO domains (name, type, master) VALUES('$zone','SLAVE','127.0.0.1:$port')"
        done
 
-       mysql --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" "$GMYSQL2DB" \
-       -e "INSERT INTO tsigkeys (name, algorithm,secret) VALUES('test', '$ALGORITHM', '$KEY')"
-       mysql --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" "$GMYSQL2DB" \
-       -e "INSERT INTO domainmetadata (domain_id, kind, content) SELECT id, 'AXFR-MASTER-TSIG', 'test' FROM domains WHERE name = 'tsig.com'"
-       set +e
-       echo $skipreasons | grep -q nolua
-       if [ $? -ne 0 ]
+       ../pdns/pdnssec --config-dir=. --config-name=gmysql2 import-tsig-key test $ALGORITHM $KEY
+       ../pdns/pdnssec --config-dir=. --config-name=gmysql2 activate-tsig-key tsig.com test master
+       if [[ $skipreasons != *nolua* ]]
        then
-               mysql --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQL2HOST" "$GMYSQL2DB" \
-               -e "INSERT INTO domainmetadata (domain_id,kind,content) SELECT id,'AXFR-SOURCE','127.0.0.2' FROM domains WHERE name = 'stest.com'"
+               ../pdns/pdnssec --config-dir=. --config-name=gmysql2 set-meta stest.com AXFR-SOURCE 127.0.0.2
        fi
-       set -e
 
        port=$((port+100))
 
-       $RUNWRAPPER $PDNS2 --daemon=no --local-port=$port --socket-dir=./ \
-               --no-shuffle --launch=gmysql --gmysql-dnssec \
-               --send-root-referral \
-               --allow-2136-from=127.0.0.0/8 --experimental-rfc2136=yes \
-               --cache-ttl=$cachettl --query-cache-ttl=$cachettl --experimental-dname-processing --no-config --slave --retrieval-threads=4 \
-               --gmysql-dbname="$GMYSQL2DB" \
-               --gmysql-user="$GMYSQL2USER" \
-               --gmysql-host="$GMYSQL2HOST" \
-               --gmysql-password="$GMYSQL2PASSWD" \
-               --config-name=gmysql2 &
+       $RUNWRAPPER $PDNS2 --daemon=no --local-port=$port --config-dir=. \
+               --config-name=gmysql2 --socket-dir=./ --no-shuffle \
+               --send-root-referral --slave --retrieval-threads=4 \
+               --slave-cycle-interval=300 --experimental-dname-processing &
+
        echo 'waiting for zones to be slaved'
        loopcount=0
-       while [ $loopcount -lt 20 ]
+       while [ $loopcount -lt 30 ]
        do
                sleep 5
                todo=$(mysql --user="$GMYSQL2USER" --password="$GMYSQL2PASSWD" --host="$GMYSQl2HOST" \
@@ -58,4 +56,5 @@
        if [ $todo -ne 0 ]
        then
                echo "AXFR FAILED" >> failed_tests
+               exit
        fi
index 024dad02c45f5fd5928f3c8e5be5ee0c7720b00e..27b5cacd080558898fe21c853976cf0245394412 100644 (file)
@@ -24,13 +24,10 @@ __EOF__
 
        ../pdns/pdnssec --config-dir=. --config-name=goracle2 import-tsig-key test $ALGORITHM $KEY
        ../pdns/pdnssec --config-dir=. --config-name=goracle2 activate-tsig-key tsig.com test master
-       set +e
-       echo $skipreasons | grep -q nolua
-       if [ $? -ne 0 ]
+       if [[ $skipreasons != *nolua* ]]
        then
                ../pdns/pdnssec --config-dir=. --config-name=goracle2 set-meta stest.com AXFR-SOURCE 127.0.0.2
        fi
-       set -e
 
        port=$((port+100))
 
@@ -38,10 +35,10 @@ __EOF__
                --config-name=goracle2 --socket-dir=./ --no-shuffle \
                --send-root-referral --slave --retrieval-threads=4 \
                --slave-cycle-interval=300 --experimental-dname-processing &
-       echo 'waiting for zones to be slaved'
 
+       echo 'waiting for zones to be slaved'
        loopcount=0
-       while [ $loopcount -lt 40 ]
+       while [ $loopcount -lt 30 ]
        do
                sleep 5
                todo=$(sqlplus -S $GORACLE2USER/$GORACLE2PASSWD@xe << __EOF__
@@ -59,4 +56,5 @@ __EOF__
        if [ $todo -ne 0 ]
        then
                echo "AXFR FAILED" >> failed_tests
+               exit
        fi
index 5e877655a344eddf89aca8ad34a6a1e4d5bcfe2f..1aa3027cabd11e4df0730c7649f2dcbc473e2980 100644 (file)
@@ -2,8 +2,8 @@
        [ -z "$GPGSQ2LDB" ] && GPGSQL2DB=pdnstest2
        [ -z "$GPGSQL2USER" ] && GPGSQL2USER=$(whoami)
 
-       dropdb --user="$GPGSQL2USER" "$GPGSQL2DB"       || echo ignoring mysqladmin drop failure
-       createdb --user="$GPGSQL2USER" "$GPGSQL2DB"     || echo ignoring mysqladmin drop failure
+       dropdb --user="$GPGSQL2USER" "$GPGSQL2DB" || echo ignoring mysqladmin drop failure
+       createdb --user="$GPGSQL2USER" "$GPGSQL2DB" || echo ignoring mysqladmin drop failure
        psql --user="$GPGSQL2USER" "$GPGSQL2DB" < ../modules/gpgsqlbackend/schema.pgsql.sql
 
   cat > pdns-gpgsql2.conf << __EOF__
index ec80b662c3cc12313acb563fde631cfb9c7c3d55..00f6490791d26372db3402632f33be5e6c794d7c 100644 (file)
@@ -1,38 +1,41 @@
        context=${context}-presigned-gsqlite3
-       rm -f pdns.sqlite31
-       sqlite3 pdns.sqlite31 < ../modules/gsqlite3backend/schema.sqlite3.sql
+       rm -f pdns.sqlite32
+       sqlite3 pdns.sqlite32 < ../modules/gsqlite3backend/schema.sqlite3.sql
+
+       cat > pdns-gsqlite32.conf << __EOF__
+launch=gsqlite3
+gsqlite3-database=pdns.sqlite32
+gsqlite3-pragma-synchronous=0
+gsqlite3-dnssec
+__EOF__
 
        for zone in $(grep 'zone ' named.conf  | cut -f2 -d\" | tac)
        do
-               sqlite3 pdns.sqlite31 "INSERT INTO domains (name, type, master) VALUES('$zone','SLAVE','127.0.0.1:$port');"
+               sqlite3 pdns.sqlite32 "INSERT INTO domains (name, type, master) VALUES('$zone','SLAVE','127.0.0.1:$port');"
        done
 
-       sqlite3 pdns.sqlite31 "INSERT INTO tsigkeys (name,algorithm,secret) VALUES('test','$ALGORITHM', '$KEY')"
-       sqlite3 pdns.sqlite31 "INSERT INTO domainmetadata (domain_id, kind, content) SELECT id, 'AXFR-MASTER-TSIG', 'test' FROM domains WHERE name = 'tsig.com'"
-       set +e
-       echo $skipreasons | grep -q nolua
-       if [ $? -ne 0 ]
+       ../pdns/pdnssec --config-dir=. --config-name=gsqlite32 import-tsig-key test $ALGORITHM $KEY
+       ../pdns/pdnssec --config-dir=. --config-name=gsqlite32 activate-tsig-key tsig.com test master
+       if [[ $skipreasons != *nolua* ]]
        then
-               sqlite3 pdns.sqlite31  "INSERT INTO domainmetadata (domain_id,kind,content) SELECT id,'AXFR-SOURCE','127.0.0.2' FROM domains WHERE name = 'stest.com'"
+               ../pdns/pdnssec --config-dir=. --config-name=gsqlite32 set-meta stest.com AXFR-SOURCE 127.0.0.2
        fi
-       set -e
 
        port=$((port+100))
 
-       $RUNWRAPPER $PDNS2 --daemon=no --local-port=$port --socket-dir=./  \
-               --no-shuffle --launch=gsqlite3 --gsqlite3-dnssec \
-               --fancy-records --send-root-referral \
-               --cache-ttl=0 --query-cache-ttl=0 --experimental-dname-processing --no-config --slave --retrieval-threads=4 \
-               --gsqlite3-database=pdns.sqlite31 --gsqlite3-pragma-synchronous=0 \
-               --config-name=gsqlite32 &
+       $RUNWRAPPER $PDNS2 --daemon=no --local-port=$port --config-dir=. \
+               --config-name=gsqlite32 --socket-dir=./ --no-shuffle \
+               --send-root-referral --slave --retrieval-threads=4 \
+               --slave-cycle-interval=300 --experimental-dname-processing &
+
        echo 'waiting for zones to be slaved'
        set +e
        loopcount=0
-       while [ $loopcount -lt 20 ]
+       while [ $loopcount -lt 30 ]
        do
                sleep 5
-               todo=$(sqlite3 pdns.sqlite31 'SELECT COUNT(id) FROM domains WHERE last_check IS NULL')
-               if [ $todo -eq 0 ]
+               todo=$(sqlite3 pdns.sqlite32 'SELECT COUNT(id) FROM domains WHERE last_check IS NULL')
+               if [ $? -eq 0 ]
                then
                        if [ $todo = 0 ]
                        then
@@ -44,6 +47,7 @@
        if [ $todo -ne 0 ]
        then
                echo "AXFR FAILED" >> failed_tests
+               exit
        fi
        set -e
-       sqlite3 pdns.sqlite31 ANALYZE;
+       sqlite3 pdns.sqlite32 ANALYZE;