summaryrefslogtreecommitdiffstats
path: root/test/TEST-75-RESOLVED
diff options
context:
space:
mode:
authorFrantisek Sumsal <frantisek@sumsal.cz>2022-04-17 15:50:16 +0200
committerFrantisek Sumsal <frantisek@sumsal.cz>2022-07-04 12:21:55 +0200
commitfb6f25d7b979134adf5744c9f4a678d8eea0e9a6 (patch)
treee83238dfb4983378d15bcb776c41d5399ba77e69 /test/TEST-75-RESOLVED
parenttest: resize the terminal automagically with INTERACTIVE_DEBUG=yes (diff)
downloadsystemd-fb6f25d7b979134adf5744c9f4a678d8eea0e9a6.tar.xz
systemd-fb6f25d7b979134adf5744c9f4a678d8eea0e9a6.zip
test: Introduce systemd-resolved test suite
Resolves: #19599
Diffstat (limited to 'test/TEST-75-RESOLVED')
-rw-r--r--test/TEST-75-RESOLVED/Makefile6
-rwxr-xr-xtest/TEST-75-RESOLVED/test.sh43
2 files changed, 49 insertions, 0 deletions
diff --git a/test/TEST-75-RESOLVED/Makefile b/test/TEST-75-RESOLVED/Makefile
new file mode 100644
index 0000000000..9f65d4ca4f
--- /dev/null
+++ b/test/TEST-75-RESOLVED/Makefile
@@ -0,0 +1,6 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+
+all setup run clean clean-again:
+ @TEST_BASE_DIR=../ ./test.sh --$@
+
+.PHONY: all setup run clean clean-again
diff --git a/test/TEST-75-RESOLVED/test.sh b/test/TEST-75-RESOLVED/test.sh
new file mode 100755
index 0000000000..b0021712e3
--- /dev/null
+++ b/test/TEST-75-RESOLVED/test.sh
@@ -0,0 +1,43 @@
+#!/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"
+
+if ! command -v knotd >/dev/null; then
+ echo "This test requires Knot DNS server, skipping..."
+ exit 0
+fi
+
+# 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 /lib/tmpfiles.d/knot.conf
+ image_install "${ROOTLIBDIR:?}/system/knot.service"
+ image_install -o /etc/dbus-1/system.d/cz.nic.knotd.conf
+
+ # 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
+}
+
+do_test "$@"