]>
Commit | Line | Data |
---|---|---|
ca404e94 | 1 | #!/usr/bin/env bash |
ef5a5c88 PD |
2 | set -e |
3 | ||
2dd4d60b PD |
4 | export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python |
5 | ||
ca404e94 | 6 | if [ ! -d .venv ]; then |
98508251 | 7 | python3 -m venv .venv |
ca404e94 RG |
8 | fi |
9 | . .venv/bin/activate | |
10 | python -V | |
4e144f1d PD |
11 | |
12 | if [ `uname -s` == Darwin ] | |
13 | then | |
14 | if [ ! -e /usr/local/opt/curl-openssl ] | |
15 | then | |
16 | echo Please run: brew install curl-openssl, and try again | |
17 | exit 1 | |
18 | else | |
19 | export PYCURL_CURL_CONFIG=/usr/local/opt/curl-openssl/bin/curl-config | |
20 | export LDFLAGS=-L/usr/local/opt/openssl/lib | |
21 | export CPPFLAGS=-I/usr/local/opt/openssl/include | |
22 | fi | |
23 | fi | |
ba0b1412 | 24 | pip install -U pip wheel | cat |
38a3b7c0 | 25 | pip install -r requirements.txt | cat |
4e144f1d | 26 | |
1d0bd88a | 27 | protoc -I=../pdns/ --python_out=. ../pdns/dnsmessage.proto |
82a91ddf | 28 | protoc -I=../pdns/ --python_out=. ../pdns/dnstap.proto |
ca404e94 | 29 | |
aac2124b RG |
30 | mkdir -p configs |
31 | ||
ca404e94 | 32 | if [ -z "${DNSDISTBIN}" ]; then |
b4f23783 | 33 | DNSDISTBIN=$(ls ../pdns/dnsdistdist/dnsdist-*/dnsdist) |
ca404e94 RG |
34 | fi |
35 | export DNSDISTBIN | |
36 | ||
37 | set -e | |
9091cf89 PL |
38 | if [ "${PDNS_DEBUG}" = "YES" ]; then |
39 | set -x | |
40 | fi | |
a227f47d | 41 | |
8c15553e | 42 | rm -f ca.key ca.pem ca.srl server.csr server.key server.pem server.chain server.ocsp |
c8f3da74 OM |
43 | rm -rf configs/* |
44 | ||
a227f47d RG |
45 | # Generate a new CA |
46 | openssl req -new -x509 -days 1 -extensions v3_ca -keyout ca.key -out ca.pem -nodes -config configCA.conf | |
47 | # Generate a new server certificate request | |
48 | openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr -config configServer.conf | |
49 | # Sign the server cert | |
046bac5c | 50 | openssl x509 -req -days 1 -CA ca.pem -CAkey ca.key -CAcreateserial -in server.csr -out server.pem -extfile configServer.conf -extensions v3_req |
a227f47d | 51 | # Generate a chain |
c8f3da74 | 52 | cat server.pem ca.pem > server.chain |
5ac11505 CHB |
53 | # Generate a password-protected PKCS12 file |
54 | openssl pkcs12 -export -passout pass:passw0rd -clcerts -in server.pem -CAfile ca.pem -inkey server.key -out server.p12 | |
a227f47d | 55 | |
f3853a40 O |
56 | out=$(mktemp) |
57 | set -o pipefail | |
58 | if ! nosetests --with-xunit $@ 2>&1 | tee "${out}" ; then | |
aac2124b RG |
59 | for log in configs/*.log; do |
60 | echo "=== ${log} ===" | |
61 | cat "${log}" | |
f3853a40 | 62 | echo |
aac2124b | 63 | done |
f3853a40 O |
64 | echo "=== nosetests log ===" |
65 | cat "${out}" | |
66 | echo "=== end of nosetests log ===" | |
aac2124b RG |
67 | false |
68 | fi | |
f3853a40 | 69 | rm -f "${out}" |
a227f47d | 70 | |
8c15553e | 71 | rm -f ca.key ca.pem ca.srl server.csr server.key server.pem server.chain server.ocsp |