diff options
Diffstat (limited to 'test/TEST-75-RESOLVED/test.sh')
-rwxr-xr-x | test/TEST-75-RESOLVED/test.sh | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/test/TEST-75-RESOLVED/test.sh b/test/TEST-75-RESOLVED/test.sh new file mode 100755 index 0000000..55a9f1b --- /dev/null +++ b/test/TEST-75-RESOLVED/test.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-2.1-or-later +set -e + +TEST_DESCRIPTION="Tests for systemd-resolved" +TEST_NO_QEMU=1 +NSPAWN_ARGUMENTS="--private-network" + +# shellcheck source=test/test-functions +. "${TEST_BASE_DIR:?}/test-functions" + +test_require_bin knotd + +# We need at least Knot 3.0 which support (among others) the ds-push directive +if ! knotc -c "${TEST_BASE_DIR:?}/knot-data/knot.conf" conf-check; then + echo "This test requires at least Knot 3.0. skipping..." + exit 0 +fi + +test_append_files() { + local workspace="${1:?}" + # Install knot + image_install kzonecheck keymgr kjournalprint knotc knotd + image_install "${ROOTLIBDIR:?}/system/knot.service" + image_install -o /lib/tmpfiles.d/knot.conf + image_install -o /etc/dbus-1/system.d/cz.nic.knotd.conf + image_install -o /etc/default/knot + + # Copy over our configuration + mkdir -p "${workspace:?}/var/lib/knot/zones/" "${workspace:?}/etc/knot/" + cp -rfv "${TEST_BASE_DIR:?}"/knot-data/zones/* "$workspace/var/lib/knot/zones/" + cp -fv "${TEST_BASE_DIR:?}/knot-data/knot.conf" "$workspace/etc/knot/knot.conf" + chgrp -R knot "$workspace/etc/knot/" "$workspace/var/lib/knot/" + chmod -R ug+rwX "$workspace/var/lib/knot/" + chmod -R g+r "$workspace/etc/knot/" + + # Install DNS-related utilities (usually found in the bind-utils package) + image_install delv dig host nslookup + + if command -v nft >/dev/null; then + # Install nftables + image_install nft + fi +} + +do_test "$@" |