]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | ||
3 | set -x | |
4 | context='' | |
5 | # poor mans option parsing | |
6 | if [ -n "$1" ]; then | |
7 | if [ "$1" != "odbc" ]; then | |
8 | echo "invalid argument" | |
9 | exit 1 | |
10 | fi | |
11 | context=odbc | |
12 | if [ -n "$2" ]; then | |
13 | echo "too many arguments" | |
14 | exit 1 | |
15 | fi | |
16 | fi | |
17 | ||
18 | export PDNS=/usr/sbin/pdns_server | |
19 | export PDNS2=$PDNS | |
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 | |
28 | ||
29 | export GEM_HOME=${PWD}/gems | |
30 | mkdir -p $GEM_HOME | |
31 | export PATH="${GEM_HOME}/bin:$PATH" | |
32 | ||
33 | if [ -z "$context" ]; then | |
34 | cd modules/remotebackend | |
35 | ruby -S bundle install | |
36 | cd ../../ | |
37 | fi | |
38 | ||
39 | MODULES="" | |
40 | ||
41 | for dir in /usr/lib/x86_64-linux-gnu/pdns /usr/lib64/pdns; do | |
42 | if [ -d $dir ]; then | |
43 | MODULES=$dir | |
44 | break | |
45 | fi | |
46 | done | |
47 | [ -z $MODULES ] && echo "No module directory found" >&2 && exit 1 | |
48 | ||
49 | # Symlink the modules on the system | |
50 | cd regression-tests/modules | |
51 | for backend in *.so; do | |
52 | ln -sf $MODULES/$backend $backend | |
53 | done | |
54 | ||
55 | cd .. | |
56 | ||
57 | EXITCODE=0 | |
58 | ||
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 | |
63 | ||
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 | |
70 | ||
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 | |
74 | ||
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 | |
80 | ||
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 | |
86 | ||
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 | |
92 | ||
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 | |
99 | ||
100 | ./timestamp timeout 120s ./start-test-stop 5300 lua2 | |
101 | ./timestamp timeout 120s ./start-test-stop 5300 lua2-dnssec | |
102 | ||
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 | |
106 | ||
107 | ./timestamp ./start-test-stop 5300 tinydns || EXITCODE=1 | |
108 | ||
109 | cd ../regression-tests.nobackend/ | |
110 | ||
111 | ./runtests || EXITCODE=1 | |
112 | elif [ "$context" = "odbc" ]; then | |
113 | cat > ~/.odbc.ini << __EOF__ | |
114 | [pdns-sqlite3-1] | |
115 | Driver = SQLite3 | |
116 | Database = $(pwd)/pdns.sqlite3 | |
117 | ||
118 | [pdns-sqlite3-2] | |
119 | Driver = SQLite3 | |
120 | Database = $(pwd)/pdns.sqlite32 | |
121 | ||
122 | [pdns-mssql] | |
123 | Driver=FreeTDS | |
124 | Trace=No | |
125 | Server=pdns-odbc-regress-sql-1.database.windows.net | |
126 | Port=1433 | |
127 | Database=pdns | |
128 | TDS_Version=7.1 | |
129 | ClientCharset=UTF-8 | |
130 | __EOF__ | |
131 | ||
132 | set +x | |
133 | . ~/.mssql-credentials | |
134 | set -x | |
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 | |
145 | fi | |
146 | ||
147 | exit $EXITCODE |