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
/notify
23 export SAXFR
=/usr
/bin
/saxfr
24 export ZONE2SQL
=/usr
/bin
/zone2sql
25 export PDNSUTIL
=/usr
/bin
/pdnsutil
26 export PDNSCONTROL
=/usr
/bin
/pdns_control
28 export GEM_HOME
=${PWD}/gems
30 export PATH
="${GEM_HOME}/bin:$PATH"
32 if [ -z "$context" ]; then
33 cd modules
/remotebackend
34 ruby
-S bundle
install
40 for dir
in /usr
/lib
/x86_64-linux-gnu
/pdns
/usr
/lib64
/pdns
; do
46 [ -z $MODULES ] && echo "No module directory found" >&2 && exit 1
48 # Symlink the modules on the system
49 cd regression-tests
/modules
50 for backend
in *.so
; do
51 ln -sf $MODULES/$backend $backend
58 if [ -z "$context" ]; then
59 export geoipregion
=oc geoipregionip
=1.2.3.4
60 .
/timestamp .
/start-test-stop
5300 bind-both || EXITCODE
=1
61 .
/timestamp .
/start-test-stop
5300 bind-dnssec-both || EXITCODE
=1
63 # No PKCS#11 in packages
64 #SETUP_SOFTHSM=y ./timestamp ./start-test-stop 5300 bind-dnssec-pkcs11 || EXITCODE=1
65 .
/timestamp .
/start-test-stop
5300 bind-dnssec-nsec3-both || EXITCODE
=1
66 .
/timestamp .
/start-test-stop
5300 bind-dnssec-nsec3-optout-both || EXITCODE
=1
67 .
/timestamp .
/start-test-stop
5300 bind-dnssec-nsec3-narrow || EXITCODE
=1
68 .
/timestamp .
/start-test-stop
5300 bind-hybrid-nsec3 || EXITCODE
=1
70 # Adding extra IPs to docker containers in not supported :(
71 #./timestamp ./start-test-stop 5300 geoipbackend || EXITCODE=1
72 #./timestamp ./start-test-stop 5300 geoipbackend-nsec3-narrow || EXITCODE=1
74 .
/timestamp .
/start-test-stop
5300 gmysql-nodnssec-both || EXITCODE
=1
75 .
/timestamp .
/start-test-stop
5300 gmysql-both || EXITCODE
=1
76 .
/timestamp .
/start-test-stop
5300 gmysql-nsec3-both || EXITCODE
=1
77 .
/timestamp .
/start-test-stop
5300 gmysql-nsec3-optout-both || EXITCODE
=1
78 .
/timestamp .
/start-test-stop
5300 gmysql-nsec3-narrow || EXITCODE
=1
80 .
/timestamp .
/start-test-stop
5300 gpgsql-nodnssec-both || EXITCODE
=1
81 .
/timestamp .
/start-test-stop
5300 gpgsql-both || EXITCODE
=1
82 .
/timestamp .
/start-test-stop
5300 gpgsql-nsec3-both || EXITCODE
=1
83 .
/timestamp .
/start-test-stop
5300 gpgsql-nsec3-optout-both || EXITCODE
=1
84 .
/timestamp .
/start-test-stop
5300 gpgsql-nsec3-narrow || EXITCODE
=1
86 .
/timestamp .
/start-test-stop
5300 gsqlite3-nodnssec-both || EXITCODE
=1
87 .
/timestamp .
/start-test-stop
5300 gsqlite3-both || EXITCODE
=1
88 .
/timestamp .
/start-test-stop
5300 gsqlite3-nsec3-both || EXITCODE
=1
89 .
/timestamp .
/start-test-stop
5300 gsqlite3-nsec3-optout-both || EXITCODE
=1
90 .
/timestamp .
/start-test-stop
5300 gsqlite3-nsec3-narrow || EXITCODE
=1
92 .
/timestamp .
/start-test-stop
5300 mydns || EXITCODE
=1
94 .
/timestamp .
/start-test-stop
5300 opendbx-sqlite3 || EXITCODE
=1
96 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-pipe || EXITCODE
=1
97 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-pipe-dnssec || EXITCODE
=1
98 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-unix || EXITCODE
=1
99 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-unix-dnssec || EXITCODE
=1
100 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-http || EXITCODE
=1
101 .
/timestamp timeout
120s .
/start-test-stop
5300 remotebackend-http-dnssec || EXITCODE
=1
104 # No 0MQ in the PowerDNS packages
105 #./timestamp timeout 120s ./start-test-stop 5300 remotebackend-zeromq || EXITCODE=1
106 #./timestamp timeout 120s ./start-test-stop 5300 remotebackend-zeromq-dnssec || EXITCODE=1
108 .
/timestamp .
/start-test-stop
5300 tinydns || EXITCODE
=1
110 cd ..
/regression-tests.nobackend
/
112 .
/runtests || EXITCODE
=1
113 elif [ "$context" = "odbc" ]; then
114 cat > ~
/.odbc.ini
<< __EOF__
117 Database = $(pwd)/pdns.sqlite3
121 Database = $(pwd)/pdns.sqlite32
126 Server=pdns-odbc-regress-sql-1.database.windows.net
134 . ~
/.mssql-credentials
136 export GODBC_SQLITE3_DSN
=pdns-sqlite3-1
137 .
/timestamp timeout
120s .
/start-test-stop
5300 godbc_sqlite3-nodnssec || EXITCODE
=1
138 export GODBC_MSSQL_DSN
=pdns-mssql
139 export GODBC_MSSQL_USERNAME
140 export GODBC_MSSQL_PASSWORD
141 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nodnssec || EXITCODE
=1
142 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql || EXITCODE
=1
143 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nsec3 || EXITCODE
=1
144 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nsec3-optout || EXITCODE
=1
145 .
/timestamp timeout
3600s .
/start-test-stop
5300 godbc_mssql-nsec3-narrow || EXITCODE
=1