5 # poor mans option parsing
7 if [ "$1" != "odbc" ]; then
8 echo "invalid argument"
13 echo "too many arguments"
18 export PDNS
=/usr
/sbin
/pdns_server
20 export SDIG
=/usr
/bin
/sdig
21 export NSEC3DIG
=/usr
/bin
/nsec3dig
22 export NOTIFY
=/usr
/bin
/pdns_notify
23 export SAXFR
=/usr
/bin
/saxfr
24 export ZONE2SQL
=/usr
/bin
/zone2sql
25 export ZONE2JSON
=/usr
/bin
/zone2json
26 export PDNSUTIL
=/usr
/bin
/pdnsutil
27 export PDNSCONTROL
=/usr
/bin
/pdns_control
29 export GEM_HOME
=${PWD}/gems
31 export PATH
="${GEM_HOME}/bin:$PATH"
33 if [ -z "$context" ]; then
34 cd modules
/remotebackend
35 ruby
-S bundle
install
41 for dir
in /usr
/lib
/x86_64-linux-gnu
/pdns
/usr
/lib64
/pdns
; do
47 [ -z $MODULES ] && echo "No module directory found" >&2 && exit 1
49 # Symlink the modules on the system
50 cd regression-tests
/modules
51 for backend
in *.so
; do
52 ln -sf $MODULES/$backend $backend
59 if [ -z "$context" ]; then
60 export geoipregion
=oc geoipregionip
=1.2.3.4
61 .
/timestamp .
/start-test-stop
5300 bind-both || EXITCODE
=1
62 .
/timestamp .
/start-test-stop
5300 bind-dnssec-both || EXITCODE
=1
64 # No PKCS#11 in packages
65 #SETUP_SOFTHSM=y ./timestamp ./start-test-stop 5300 bind-dnssec-pkcs11 || EXITCODE=1
66 .
/timestamp .
/start-test-stop
5300 bind-dnssec-nsec3-both || EXITCODE
=1
67 .
/timestamp .
/start-test-stop
5300 bind-dnssec-nsec3-optout-both || EXITCODE
=1
68 .
/timestamp .
/start-test-stop
5300 bind-dnssec-nsec3-narrow || EXITCODE
=1
69 .
/timestamp .
/start-test-stop
5300 bind-hybrid-nsec3 || EXITCODE
=1
71 # Adding extra IPs to docker containers in not supported :(
72 #./timestamp ./start-test-stop 5300 geoipbackend || EXITCODE=1
73 #./timestamp ./start-test-stop 5300 geoipbackend-nsec3-narrow || EXITCODE=1
75 .
/timestamp .
/start-test-stop
5300 gmysql-nodnssec-both || EXITCODE
=1
76 .
/timestamp .
/start-test-stop
5300 gmysql-both || EXITCODE
=1
77 .
/timestamp .
/start-test-stop
5300 gmysql-nsec3-both || EXITCODE
=1
78 .
/timestamp .
/start-test-stop
5300 gmysql-nsec3-optout-both || EXITCODE
=1
79 .
/timestamp .
/start-test-stop
5300 gmysql-nsec3-narrow || EXITCODE
=1
81 .
/timestamp .
/start-test-stop
5300 gpgsql-nodnssec-both || EXITCODE
=1
82 .
/timestamp .
/start-test-stop
5300 gpgsql-both || EXITCODE
=1
83 .
/timestamp .
/start-test-stop
5300 gpgsql-nsec3-both || EXITCODE
=1
84 .
/timestamp .
/start-test-stop
5300 gpgsql-nsec3-optout-both || EXITCODE
=1
85 .
/timestamp .
/start-test-stop
5300 gpgsql-nsec3-narrow || EXITCODE
=1
87 .
/timestamp .
/start-test-stop
5300 gsqlite3-nodnssec-both || EXITCODE
=1
88 .
/timestamp .
/start-test-stop
5300 gsqlite3-both || EXITCODE
=1
89 .
/timestamp .
/start-test-stop
5300 gsqlite3-nsec3-both || EXITCODE
=1
90 .
/timestamp .
/start-test-stop
5300 gsqlite3-nsec3-optout-both || EXITCODE
=1
91 .
/timestamp .
/start-test-stop
5300 gsqlite3-nsec3-narrow || EXITCODE
=1
93 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-pipe || EXITCODE
=1
94 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-pipe-dnssec || EXITCODE
=1
95 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-unix || EXITCODE
=1
96 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-unix-dnssec || EXITCODE
=1
97 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-http || EXITCODE
=1
98 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-http-dnssec || EXITCODE
=1
100 .
/timestamp timeout
120s .
/start-test-stop
5300 lua2
101 .
/timestamp timeout
120s .
/start-test-stop
5300 lua2-dnssec
103 # No 0MQ in the PowerDNS packages
104 #./timestamp timeout 120s ./start-test-stop 5300 remotebackend-zeromq || EXITCODE=1
105 #./timestamp timeout 120s ./start-test-stop 5300 remotebackend-zeromq-dnssec || EXITCODE=1
107 .
/timestamp .
/start-test-stop
5300 tinydns || EXITCODE
=1
109 cd ..
/regression-tests.nobackend
/
111 .
/runtests || EXITCODE
=1
112 elif [ "$context" = "odbc" ]; then
113 cat > ~
/.odbc.ini
<< __EOF__
116 Database = $(pwd)/pdns.sqlite3
120 Database = $(pwd)/pdns.sqlite32
125 Server=pdns-odbc-regress-sql-1.database.windows.net
133 . ~
/.mssql-credentials
135 export GODBC_SQLITE3_DSN
=pdns-sqlite3-1
136 .
/timestamp timeout
120s .
/start-test-stop
5300 godbc_sqlite3-nodnssec || EXITCODE
=1
137 export GODBC_MSSQL_DSN
=pdns-mssql
138 export GODBC_MSSQL_USERNAME
139 export GODBC_MSSQL_PASSWORD
140 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nodnssec || EXITCODE
=1
141 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql || EXITCODE
=1
142 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nsec3 || EXITCODE
=1
143 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nsec3-optout || EXITCODE
=1
144 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nsec3-narrow || EXITCODE
=1