Use jinja2 templates in statistics test

- Merge ns*/statistics-channels.conf.in config snippets into
  conditionally rendered section in ns*/named.conf.j2 files.
- Turn ns2/named.conf.in into ns2/named1.conf.j2 because it is used
  later in the test to restore the original config.
- Symlink the ns2/named.conf.j2 ns2/named1.conf.j2 to pick a starting
  config.

(cherry picked from commit cb88d1eda6)
This commit is contained in:
Nicki Křížek 2025-12-05 17:19:59 +01:00
parent 42e1f010d7
commit 684acd7caf
10 changed files with 24 additions and 82 deletions

View file

@ -24,7 +24,11 @@ options {
notify yes;
};
include "statistics-channels.conf";
{% if FEATURE_LIBXML2 == "1" or FEATURE_JSON_C == "1" %}
statistics-channels {
inet 10.53.0.1 port @EXTRAPORT1@ allow { any; };
};
{% endif %}
zone "." {
type primary;

View file

@ -1,16 +0,0 @@
/*
* 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.
*/
statistics-channels {
inet 10.53.0.1 port @EXTRAPORT1@ allow { any; };
};

View file

@ -0,0 +1 @@
named1.conf.j2

View file

@ -24,8 +24,11 @@ options {
notify yes;
};
include "statistics-channels.conf";
{% if FEATURE_LIBXML2 == "1" or FEATURE_JSON_C == "1" %}
statistics-channels {
inet 10.53.0.2 port @EXTRAPORT1@ allow { any; };
};
{% endif %}
key rndc_key {
secret "1234abcd8765";

View file

@ -24,7 +24,11 @@ options {
notify yes;
};
include "statistics-channels.conf";
{% if FEATURE_LIBXML2 == "1" or FEATURE_JSON_C == "1" %}
statistics-channels {
inet 10.53.0.2 port @EXTRAPORT1@ allow { any; };
};
{% endif %}
key rndc_key {
secret "1234abcd8765";

View file

@ -1,16 +0,0 @@
/*
* 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.
*/
statistics-channels {
inet 10.53.0.2 port @EXTRAPORT1@ allow { any; };
};

View file

@ -27,8 +27,11 @@ options {
zone-statistics yes;
};
include "statistics-channels.conf";
{% if FEATURE_LIBXML2 == "1" or FEATURE_JSON_C == "1" %}
statistics-channels {
inet 10.53.0.3 port @EXTRAPORT1@ allow { any; };
};
{% endif %}
key rndc_key {
secret "1234abcd8765";

View file

@ -1,16 +0,0 @@
/*
* 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.
*/
statistics-channels {
inet 10.53.0.3 port @EXTRAPORT1@ allow { any; };
};

View file

@ -1,25 +0,0 @@
#!/bin/sh
# 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.
. ../conf.sh
for d in ns1 ns2 ns3; do
conf=named.conf
copy_setports "${d}/${conf}.in" "${d}/${conf}"
conf=statistics-channels.conf
if $FEATURETEST --have-libxml2 || $FEATURETEST --have-json-c; then
copy_setports "${d}/${conf}.in" "${d}/${conf}"
else
echo "" >"${d}/${conf}"
fi
done

View file

@ -258,17 +258,17 @@ ret=0
rndc_stats ns2 10.53.0.2 || ret=1
sed -n '/Per Zone Query Statistics/,/^++/p' $last_stats | grep -F '[example]' >/dev/null && ret=0
# turn on
copy_setports ns2/named2.conf.in ns2/named.conf
cp ns2/named2.conf ns2/named.conf
rndc_reconfig ns2 10.53.0.2
rndc_stats ns2 10.53.0.2 || ret=1
sed -n '/Per Zone Query Statistics/,/^++/p' $last_stats | grep -F '[example]' >/dev/null || ret=1
# turn off
copy_setports ns2/named.conf.in ns2/named.conf
cp ns2/named1.conf ns2/named.conf
rndc_reconfig ns2 10.53.0.2
rndc_stats ns2 10.53.0.2 || ret=1
sed -n '/Per Zone Query Statistics/,/^++/p' $last_stats | grep -F '[example]' >/dev/null && ret=0
# turn on
copy_setports ns2/named2.conf.in ns2/named.conf
cp ns2/named2.conf ns2/named.conf
rndc_reconfig ns2 10.53.0.2
rndc_stats ns2 10.53.0.2 || ret=1
sed -n '/Per Zone Query Statistics/,/^++/p' $last_stats | grep -F '[example]' >/dev/null || ret=1