From: Nicki Křížek Date: Thu, 5 Jun 2025 15:05:38 +0000 (+0200) Subject: Separate common templates and test code for rollover tests X-Git-Tag: v9.21.11~38^2~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=44dd5b3240895154b95dd73f5a649fc08790ff1d;p=thirdparty%2Fbind9.git Separate common templates and test code for rollover tests This is a preparation to split up and further isolate the various rollover tests in a subsequent commits. --- diff --git a/bin/tests/system/rollover/common.py b/bin/tests/system/rollover/common.py new file mode 100644 index 00000000000..aa51060c414 --- /dev/null +++ b/bin/tests/system/rollover/common.py @@ -0,0 +1,36 @@ +# Copyright (C) Internet Systems Consortium, Inc. ("ISC") +# +# SPDX-License-Identifier: MPL-2.0 +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, you can obtain one at https://mozilla.org/MPL/2.0/. +# +# See the COPYRIGHT file distributed with this work for additional +# information regarding copyright ownership. + +import pytest + +pytestmark = pytest.mark.extra_artifacts( + [ + "*.axfr*", + "dig.out*", + "K*.key*", + "K*.private*", + "ns*/*.db", + "ns*/*.db.infile", + "ns*/*.db.jnl", + "ns*/*.db.jbk", + "ns*/*.db.signed", + "ns*/*.db.signed.jnl", + "ns*/*.conf", + "ns*/dsset-*", + "ns*/K*.key", + "ns*/K*.private", + "ns*/K*.state", + "ns*/keygen.out.*", + "ns*/settime.out.*", + "ns*/signer.out.*", + "ns*/zones", + ] +) diff --git a/bin/tests/system/rollover/ns3/named.common.conf.j2 b/bin/tests/system/rollover/ns3/named.common.conf.j2 new file mode 100644 index 00000000000..d1c3a054f13 --- /dev/null +++ b/bin/tests/system/rollover/ns3/named.common.conf.j2 @@ -0,0 +1,39 @@ +/* + * Copyright (C) Internet Systems Consortium, Inc. ("ISC") + * + * SPDX-License-Identifier: MPL-2.0 + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, you can obtain one at https://mozilla.org/MPL/2.0/. + * + * See the COPYRIGHT file distributed with this work for additional + * information regarding copyright ownership. + */ + +options { + query-source address 10.53.0.3; + notify-source 10.53.0.3; + transfer-source 10.53.0.3; + port @PORT@; + pid-file "named.pid"; + listen-on { 10.53.0.3; }; + listen-on-v6 { none; }; + allow-transfer { any; }; + recursion no; + dnssec-validation no; +}; + +key rndc_key { + secret "1234abcd8765"; + algorithm @DEFAULT_HMAC@; +}; + +controls { + inet 10.53.0.3 port @CONTROLPORT@ allow { any; } keys { rndc_key; }; +}; + +zone "." { + type hint; + file "../../_common/root.hint.blackhole"; +}; diff --git a/bin/tests/system/rollover/ns3/named.conf.j2 b/bin/tests/system/rollover/ns3/named.conf.j2 index 06679deb161..6f589fe22a1 100644 --- a/bin/tests/system/rollover/ns3/named.conf.j2 +++ b/bin/tests/system/rollover/ns3/named.conf.j2 @@ -15,32 +15,7 @@ include "kasp.conf"; -options { - query-source address 10.53.0.3; - notify-source 10.53.0.3; - transfer-source 10.53.0.3; - port @PORT@; - pid-file "named.pid"; - listen-on { 10.53.0.3; }; - listen-on-v6 { none; }; - allow-transfer { any; }; - recursion no; - dnssec-validation no; -}; - -key rndc_key { - secret "1234abcd8765"; - algorithm @DEFAULT_HMAC@; -}; - -controls { - inet 10.53.0.3 port @CONTROLPORT@ allow { any; } keys { rndc_key; }; -}; - -zone "." { - type hint; - file "../../_common/root.hint.blackhole"; -}; +include "named.common.conf"; /* Manual rollover. */ zone "manual-rollover.kasp" { diff --git a/bin/tests/system/rollover/ns6/named.common.conf.j2 b/bin/tests/system/rollover/ns6/named.common.conf.j2 new file mode 100644 index 00000000000..9299c978461 --- /dev/null +++ b/bin/tests/system/rollover/ns6/named.common.conf.j2 @@ -0,0 +1,35 @@ +/* + * Copyright (C) Internet Systems Consortium, Inc. ("ISC") + * + * SPDX-License-Identifier: MPL-2.0 + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, you can obtain one at https://mozilla.org/MPL/2.0/. + * + * See the COPYRIGHT file distributed with this work for additional + * information regarding copyright ownership. + */ + +options { + query-source address 10.53.0.6; + notify-source 10.53.0.6; + transfer-source 10.53.0.6; + port @PORT@; + pid-file "named.pid"; + listen-on { 10.53.0.6; }; + listen-on-v6 { none; }; + allow-transfer { any; }; + recursion no; + key-directory "."; + dnssec-validation no; +}; + +key rndc_key { + secret "1234abcd8765"; + algorithm @DEFAULT_HMAC@; +}; + +controls { + inet 10.53.0.6 port @CONTROLPORT@ allow { any; } keys { rndc_key; }; +}; diff --git a/bin/tests/system/rollover/ns6/named.conf.j2 b/bin/tests/system/rollover/ns6/named.conf.j2 index 412626e18b3..bf1e8a065db 100644 --- a/bin/tests/system/rollover/ns6/named.conf.j2 +++ b/bin/tests/system/rollover/ns6/named.conf.j2 @@ -19,33 +19,7 @@ include "kasp.conf"; include "@_csk_file@"; -options { - query-source address 10.53.0.6; - notify-source 10.53.0.6; - transfer-source 10.53.0.6; - port @PORT@; - pid-file "named.pid"; - listen-on { 10.53.0.6; }; - listen-on-v6 { none; }; - allow-transfer { any; }; - recursion no; - key-directory "."; // TODO if csk_roll? - dnssec-validation no; -}; - -key rndc_key { - secret "1234abcd8765"; - algorithm @DEFAULT_HMAC@; -}; - -controls { - inet 10.53.0.6 port @CONTROLPORT@ allow { any; } keys { rndc_key; }; -}; - -zone "." { - type hint; - file "../../_common/root.hint.blackhole"; -}; +include "named.common.conf"; /* This zone switch from dynamic to inline-signing. */ zone "dynamic2inline.kasp" { diff --git a/bin/tests/system/rollover/tests_rollover.py b/bin/tests/system/rollover/tests_rollover.py index ce81bf15cf8..ce1a5937411 100644 --- a/bin/tests/system/rollover/tests_rollover.py +++ b/bin/tests/system/rollover/tests_rollover.py @@ -21,29 +21,7 @@ import dns.update import isctest from isctest.kasp import KeyTimingMetadata, Ipub, IpubC, Iret -pytestmark = pytest.mark.extra_artifacts( - [ - "*.axfr*", - "dig.out*", - "K*.key*", - "K*.private*", - "ns*/*.db", - "ns*/*.db.infile", - "ns*/*.db.jnl", - "ns*/*.db.jbk", - "ns*/*.db.signed", - "ns*/*.db.signed.jnl", - "ns*/*.conf", - "ns*/dsset-*", - "ns*/K*.key", - "ns*/K*.private", - "ns*/K*.state", - "ns*/keygen.out.*", - "ns*/settime.out.*", - "ns*/signer.out.*", - "ns*/zones", - ] -) +from common import pytestmark def test_rollover_manual(servers):