]> git.ipfire.org Git - thirdparty/pdns.git/blame - regression-tests.recursor-dnssec/runtests
Merge pull request #13481 from berthubert/lua-localwho
[thirdparty/pdns.git] / regression-tests.recursor-dnssec / runtests
CommitLineData
7568b07d
PL
1#!/bin/sh
2
2dd4d60b
PD
3export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python
4
7568b07d 5if [ ! -d .venv ]; then
98508251 6 python3 -m venv .venv
7568b07d
PL
7fi
8. .venv/bin/activate
9python -V
38a3b7c0
OM
10pip install -U pip | cat
11pip install -r requirements.txt | cat
7568b07d 12
f1c7929a 13protoc -I=../pdns/ --python_out=. ../pdns/dnsmessage.proto
fc7f729f
OM
14protoc -I=../pdns/ --python_out=. ../pdns/dnstap.proto
15
f1c7929a 16
7568b07d
PL
17mkdir -p configs
18
cb54e9b5
PL
19[ -f ./vars ] && . ./vars
20
7568b07d
PL
21export PDNS=${PDNS:-${PWD}/../pdns/pdns_server}
22export PDNSUTIL=${PDNSUTIL:-${PWD}/../pdns/pdnsutil}
23export PDNSRECURSOR=${PDNSRECURSOR:-${PWD}/../pdns/recursordist/pdns_recursor}
24export RECCONTROL=${RECCONTROL:-${PWD}/../pdns/recursordist/rec_control}
025d939d 25
6f1a3e76 26LIBFAKETIME_DEFAULT=/usr/lib/x86_64-linux-gnu/faketime/libfaketimeMT.so.1 # ubuntu default
025d939d
CH
27LIBAUTHBIND_DEFAULT=/usr/lib/authbind/libauthbind.so.1
28if [ $(uname -s) = "Darwin" ]; then
29 # macOS is not /really/ supported here; it works for some tests, and then you might need sudo.
30 LIBFAKETIME_DEFAULT=/usr/local/lib/faketime/libfaketime.1.dylib
31 LIBAUTHBIND_DEFAULT=""
32fi
fc7f729f
OM
33if [ $(uname -s) = "OpenBSD" ]; then
34 # OpenBSD is not /really/ supported here; it works for some tests, and then you might need sudo.
35 LIBFAKETIME_DEFAULT=""
36 LIBAUTHBIND_DEFAULT=""
37fi
025d939d
CH
38
39export LIBFAKETIME=${LIBFAKETIME:-$LIBFAKETIME_DEFAULT}
40export LIBAUTHBIND=${LIBAUTHBIND:-$LIBAUTHBIND_DEFAULT}
7568b07d 41
05a91e33 42export PREFIX=127.0.0
7568b07d 43
025d939d
CH
44for bin in "$PDNS" "$PDNSUTIL" "$PDNSRECURSOR" "$RECCONTROL" "$LIBFAKETIME" "$LIBAUTHBIND"; do
45 if [ -n "$bin" -a ! -e "$bin" ]; then
46 echo "E: Required binary $bin not found. Please install the binary and/or edit ./vars."
47 exit 1
48 fi
49done
cb54e9b5 50
7568b07d
PL
51set -e
52if [ "${PDNS_DEBUG}" = "YES" ]; then
53 set -x
54fi
fc7f729f
OM
55
56if ! "$PDNSRECURSOR" --version 2>&1 | grep Features | grep -q dnstap-framestream; then
57 export NODNSTAPTESTS=1
58fi
59
6f1a3e76
OM
60# LIBFAKETIME is only added to LD_PRELOAD by the pyton code when needed
61if [ "${LIBASAN}" != "" -o "${LIBAUTHBIND}" != "" ]; then
1325b6a3 62LD_PRELOAD="${LIBASAN} ${LIBAUTHBIND}" pytest --ignore=test_WellKnown.py --junitxml=pytest.xml $@
fc7f729f 63else
1325b6a3 64pytest --ignore=test_WellKnown.py --junitxml=pytest.xml $@
fc7f729f 65fi