]> git.ipfire.org Git - thirdparty/knot-resolver.git/log
thirdparty/knot-resolver.git
23 months agoUpdate Arch Linux package URL in README.md docs-develop-feli-3u3lz1/deployments/2885
Felix Yan [Tue, 21 Nov 2023 14:25:07 +0000 (16:25 +0200)] 
Update Arch Linux package URL in README.md

The old URL returns 404 now.

23 months agoci/images/README.md: note about updating the Coverity Scan image docs-develop-6-0-mvwoqi/deployments/2882 docs-develop-ci-c-tuuvy4/deployments/2881
Oto Šťáva [Mon, 20 Nov 2023 09:29:44 +0000 (10:29 +0100)] 
ci/images/README.md: note about updating the Coverity Scan image

23 months agoMerge branch 'fix-pkg-arch' into '6.0' docs-develop-6-0-mvwoqi/deployments/2872 docs-develop-ci-a-0lthab/deployments/2875
Jakub Ružička [Tue, 14 Nov 2023 17:09:08 +0000 (18:09 +0100)] 
Merge branch 'fix-pkg-arch' into '6.0'

distro/pkg/arch: fix archlinux package to include manager

See merge request knot/knot-resolver!1473

23 months agodistro/pkg/arch: fix archlinux package to include manager docs-develop-fix-9pv3f3/deployments/2870
Lukáš Ondráček [Mon, 13 Nov 2023 15:58:48 +0000 (16:58 +0100)] 
distro/pkg/arch: fix archlinux package to include manager

23 months agoNEWS: visually separate the break in chronological order docs-develop-6-0-mvwoqi/deployments/2863
Vladimír Čunát [Mon, 6 Nov 2023 18:38:48 +0000 (19:38 +0100)] 
NEWS: visually separate the break in chronological order

The future 5.x releases will break the chronology we had so far.
And it seems useful to keep all NEWS in the future master/main branch.

23 months agoMerge branch 'logging-zonecut-typo' into '6.0' docs-develop-6-0-mvwoqi/deployments/2860
Oto Šťáva [Tue, 7 Nov 2023 14:05:40 +0000 (15:05 +0100)] 
Merge branch 'logging-zonecut-typo' into '6.0'

datamodel: logging: fix typo in 'zoncut' log group

See merge request knot/knot-resolver!1469

23 months agodatamodel: logging: fix typo in 'zoncut' log group docs-develop-logg-kksq33/deployments/2859
Oto Šťáva [Fri, 3 Nov 2023 07:42:00 +0000 (08:42 +0100)] 
datamodel: logging: fix typo in 'zoncut' log group

The log group is abbreviated in kresd - the actual word is `zonecut`,
but the log group is actually called `zoncut`, which the unfixed
datamodel would not let through.

23 months agoMerge branch 'ci-manager-remove-py3.7' into '6.0' docs-develop-6-0-mvwoqi/deployments/2858
Oto Šťáva [Tue, 7 Nov 2023 13:52:44 +0000 (14:52 +0100)] 
Merge branch 'ci-manager-remove-py3.7' into '6.0'

ci: manager: python3.7 unit tests removed

See merge request knot/knot-resolver!1471

23 months agoci/images/manage: python3.12 and pipx added docs-develop-ci-m-b9by83/deployments/2857
Aleš Mrázek [Mon, 6 Nov 2023 11:03:50 +0000 (12:03 +0100)] 
ci/images/manage: python3.12 and pipx added

23 months agomanager/.gitlab-ci.yml: unit:py3.7 tests removed
Aleš Mrázek [Mon, 6 Nov 2023 09:56:15 +0000 (10:56 +0100)] 
manager/.gitlab-ci.yml: unit:py3.7 tests removed

23 months agoMerge branch 'master' into 6.0 docs-develop-6-0-mvwoqi/deployments/2851
Vladimír Čunát [Mon, 6 Nov 2023 18:37:09 +0000 (19:37 +0100)] 
Merge branch 'master' into 6.0

23 months agoMerge !1470: lib/zonecut.c fetch_addr(): resurrect filtering by NO_IPV* obs-knot-resolver-es11k1/deployments/2853 obs-knot-resolver-es11k1/deployments/2861 obs-knot-resolver-es11k1/deployments/2862
Vladimír Čunát [Mon, 6 Nov 2023 09:41:59 +0000 (10:41 +0100)] 
Merge !1470: lib/zonecut.c fetch_addr(): resurrect filtering by NO_IPV*

23 months agolib/zonecut.c fetch_addr(): resurrect filtering by NO_IPV*
Vladimír Čunát [Fri, 3 Nov 2023 11:31:06 +0000 (12:31 +0100)] 
lib/zonecut.c fetch_addr(): resurrect filtering by NO_IPV*

This filtering was dropped in 4565cc596680 (v5.3.0).
Now it's reintroduced - but inside the function, as that seems nicer.
Nit: naming and comment were updated to fit the current usage.

As the code is designed so far (in whole history probably), in order
to detect whether we need to choose a zone cut closer to the root,
we need to do something like this in lib/zonecut.c already,
instead of just during server selection.

I don't think this change can break anything.
Fetching unusable addresses from cache seems pointless,
as selection wouldn't be allowed to use them or try resolving them.

2 years agoMerge branch 'news-5.7.0' into 'master' obs-knot-resolver-es11k1/deployments/2834 obs-knot-resolver-es11k1/deployments/2835 obs-knot-resolver-es11k1/deployments/2836 obs-knot-resolver-es11k1/deployments/2837 obs-knot-resolver-es11k1/deployments/2838 obs-knot-resolver-es11k1/deployments/2839 obs-knot-resolver-es11k1/deployments/2840 obs-knot-resolver-es11k1/deployments/2841 obs-knot-resolver-es11k1/deployments/2845 obs-knot-resolver-es11k1/deployments/2846 obs-knot-resolver-es11k1/deployments/2847
Oto Šťáva [Fri, 27 Oct 2023 14:05:10 +0000 (16:05 +0200)] 
Merge branch 'news-5.7.0' into 'master'

NEWS: improve the security entry in 5.7.0

See merge request knot/knot-resolver!1468

2 years agoNEWS: improve the security entry in 5.7.0
Vladimír Čunát [Mon, 23 Oct 2023 06:40:17 +0000 (08:40 +0200)] 
NEWS: improve the security entry in 5.7.0

2 years agoMerge !1463: ci macOS: update Knot DNS obs-knot-resolver-es11k1/deployments/2829 obs-knot-resolver-es11k1/deployments/2830 obs-knot-resolver-es11k1/deployments/2832 obs-knot-resolver-es11k1/deployments/2833
Vladimír Čunát [Mon, 23 Oct 2023 06:44:11 +0000 (08:44 +0200)] 
Merge !1463: ci macOS: update Knot DNS

2 years agoMerge !1467: doc/upgrading-to-6: nits docs-develop-6-0-mvwoqi/deployments/2815
Vladimír Čunát [Thu, 12 Oct 2023 09:43:18 +0000 (11:43 +0200)] 
Merge !1467: doc/upgrading-to-6: nits

2 years agodoc/upgrading-to-6: nits docs-develop-doc-pxoxus/deployments/2804
Oto Šťáva [Thu, 5 Oct 2023 15:08:45 +0000 (17:08 +0200)] 
doc/upgrading-to-6: nits

2 years agoMerge branch 'doc-upgrading-to-6' into '6.0' docs-develop-6-0-mvwoqi/deployments/2803
Aleš Mrázek [Thu, 5 Oct 2023 14:57:43 +0000 (16:57 +0200)] 
Merge branch 'doc-upgrading-to-6' into '6.0'

doc: upgrading guide to version 6

See merge request knot/knot-resolver!1466

2 years agodoc/upgrading.rst: better reference upgrading-to-6 docs-develop-doc-d160o2/deployments/2802
Aleš Mrázek [Wed, 20 Sep 2023 13:21:41 +0000 (15:21 +0200)] 
doc/upgrading.rst: better reference upgrading-to-6

2 years agodoc/upgrading-to-6.rst: guide improvements
Aleš Mrázek [Wed, 20 Sep 2023 13:19:48 +0000 (15:19 +0200)] 
doc/upgrading-to-6.rst: guide improvements

Lua config moved to developers chapter as internal Lua config.

2 years agoMerge !1465: Release 6.0.4 docs-develop-6-0-mvwoqi/deployments/2793 docs-release-v6-0-jq63jf/deployments/2795 v6.0.4
Vladimír Čunát [Thu, 5 Oct 2023 12:42:59 +0000 (14:42 +0200)] 
Merge !1465: Release 6.0.4

2 years agoAUTHORS + .mailmap update docs-develop-rele-pg0ipw/deployments/2792
Vladimír Čunát [Thu, 5 Oct 2023 10:55:36 +0000 (12:55 +0200)] 
AUTHORS + .mailmap update

2 years agoRelease 6.0.4, including NEWS this time docs-develop-rele-pg0ipw/deployments/2791
Vladimír Čunát [Thu, 5 Oct 2023 10:45:08 +0000 (12:45 +0200)] 
Release 6.0.4, including NEWS this time

2 years agoNEWS: fixup merge-conflict resolution
Vladimír Čunát [Thu, 5 Oct 2023 10:35:15 +0000 (12:35 +0200)] 
NEWS: fixup merge-conflict resolution

2 years agoMerge !1459: allow multiple rules on the same name or subnet docs-develop-6-0-mvwoqi/deployments/2790
Vladimír Čunát [Thu, 5 Oct 2023 10:31:49 +0000 (12:31 +0200)] 
Merge !1459: allow multiple rules on the same name or subnet

2 years ago/views docs: rewrite again, mostly docs-develop-rule-3ax554/deployments/2789
Vladimír Čunát [Sat, 23 Sep 2023 15:45:33 +0000 (17:45 +0200)] 
/views docs: rewrite again, mostly

- move typical simple examples near the top
- document the two new conditions
- reorganize the text: split conditions and actions
- other minor changes

2 years agotests: fix config.hints after view changes
Vladimír Čunát [Fri, 22 Sep 2023 08:16:21 +0000 (10:16 +0200)] 
tests: fix config.hints after view changes

It seems such an edge case that I chose to avoid the issue this way.

2 years ago/views/*/options: fix when used with e.g. tags
Vladimír Čunát [Thu, 21 Sep 2023 12:51:42 +0000 (14:51 +0200)] 
/views/*/options: fix when used with e.g. tags

The issue is not now; it has always been broken in 6.x.
The model is that at most one view applies on any request.
If we need to do more things, they must happen as one meta-action.

test_view_insert_action(): dropped; can't see a suitable replacement

2 years ago/views/*/{dst_subnet,protocols}: add, both backend+config
Vladimír Čunát [Sun, 3 Sep 2023 15:33:39 +0000 (17:33 +0200)] 
/views/*/{dst_subnet,protocols}: add, both backend+config

Examples:
 - tagging based on dst_subnet is useful for providing different
   filtering setting on different resolver addresses
 - tagging based on protocols is useful to signal used transport
   (change in DNS data that can be read by the final app)

(docs added in a later commit)

2 years agoWIP lib/rules: consider multiple tags variants when answering
Vladimír Čunát [Fri, 1 Sep 2023 08:36:26 +0000 (10:36 +0200)] 
WIP lib/rules: consider multiple tags variants when answering

2 years agolib/cache/cdb_*: add API for iteration with MDB_DUPSORT
Vladimír Čunát [Fri, 1 Sep 2023 08:35:09 +0000 (10:35 +0200)] 
lib/cache/cdb_*: add API for iteration with MDB_DUPSORT

2 years agoMDB_DUPSORT for rules
Vladimír Čunát [Mon, 28 Aug 2023 09:10:53 +0000 (11:10 +0200)] 
MDB_DUPSORT for rules

This doesn't yet search among the multiple values.
The rules/api parts that write rules were adapted or commented on.

2 years agolib/rules: avoid using preallocated LMDB writes
Vladimír Čunát [Mon, 28 Aug 2023 08:32:08 +0000 (10:32 +0200)] 
lib/rules: avoid using preallocated LMDB writes

They're a bit more efficient, but they can't work with LMDB multi-sets.
Also, write performance of rules isn't that important and typically
each rule is quite tiny anyway.

2 years agoci macOS: wait on *both* builds
Vladimír Čunát [Tue, 3 Oct 2023 09:26:48 +0000 (11:26 +0200)] 
ci macOS: wait on *both* builds

At least I hope this will work as expected.

2 years agoci macOS: update Knot DNS
Vladimír Čunát [Tue, 3 Oct 2023 09:19:02 +0000 (11:19 +0200)] 
ci macOS: update Knot DNS

2 years agoMerge !1461: datamodel: temlates: local-data: addresses fix docs-develop-6-0-mvwoqi/deployments/2773
Vladimír Čunát [Wed, 27 Sep 2023 09:20:15 +0000 (11:20 +0200)] 
Merge !1461: datamodel: temlates: local-data: addresses fix

2 years agodatamodel: temlates: local-data: addresses fix docs-develop-loca-uljedp/deployments/2768 docs-develop-loca-uljedp/deployments/2770
Aleš Mrázek [Tue, 26 Sep 2023 14:39:10 +0000 (16:39 +0200)] 
datamodel: temlates: local-data: addresses fix

2 years agoMerge !1460: Bump version to 6.0.3 docs-develop-6-0-mvwoqi/deployments/2761 docs-release-v6-0-wlzxou/deployments/2763 v6.0.3
Vladimír Čunát [Mon, 25 Sep 2023 13:13:50 +0000 (15:13 +0200)] 
Merge !1460: Bump version to 6.0.3

2 years agoBump version to 6.0.3 docs-develop-upda-signxn/deployments/2760
Jakub Ružička [Mon, 25 Sep 2023 13:07:20 +0000 (15:07 +0200)] 
Bump version to 6.0.3

2 years agoMerge !1457: manager, kresctl: allow env-vars to specify paths docs-develop-6-0-mvwoqi/deployments/2759
Vladimír Čunát [Mon, 25 Sep 2023 11:11:13 +0000 (13:11 +0200)] 
Merge !1457: manager, kresctl: allow env-vars to specify paths

2 years agokresctl: improved error message, with Host/Path docs-develop-mana-tp23ui/deployments/2758
Oto Šťáva [Mon, 25 Sep 2023 07:11:36 +0000 (09:11 +0200)] 
kresctl: improved error message, with Host/Path

2 years agosystemctl reload: use --config instead of --socket
Vladimír Čunát [Wed, 20 Sep 2023 09:53:01 +0000 (11:53 +0200)] 
systemctl reload: use --config instead of --socket

This will allow it to work even when socket is elsewhere.
The service depended on fixed config file location already,
through ExecStart.

2 years agoscripts/make-doc.sh: minor improvements
Vladimír Čunát [Tue, 19 Sep 2023 08:30:34 +0000 (10:30 +0200)] 
scripts/make-doc.sh: minor improvements

Propagate errors, fix nit reported by shellcheck.

2 years agokresctl: replace int literals with errno constants
Oto Šťáva [Wed, 20 Sep 2023 07:39:38 +0000 (09:39 +0200)] 
kresctl: replace int literals with errno constants

2 years agokresctl: file-access-less URI detection for sockets and nicer messages
Oto Šťáva [Tue, 19 Sep 2023 14:43:18 +0000 (16:43 +0200)] 
kresctl: file-access-less URI detection for sockets and nicer messages

2 years agomanager: env var for API socket renamed
Aleš Mrázek [Tue, 19 Sep 2023 07:38:00 +0000 (09:38 +0200)] 
manager: env var for API socket renamed

2 years agodatamodel: types: FilePath strict validation fix
Aleš Mrázek [Mon, 18 Sep 2023 22:35:10 +0000 (00:35 +0200)] 
datamodel: types: FilePath strict validation fix

2 years agokresctl: get API socket from environment variable
Aleš Mrázek [Mon, 18 Sep 2023 13:19:22 +0000 (15:19 +0200)] 
kresctl: get API socket from environment variable

- interface and unix_socket validation

2 years agodatamodel: env var for default management socket
Aleš Mrázek [Mon, 18 Sep 2023 12:48:49 +0000 (14:48 +0200)] 
datamodel: env var for default management socket

2 years agodatamodel: management: unix socket default fix
Aleš Mrázek [Mon, 18 Sep 2023 11:04:24 +0000 (13:04 +0200)] 
datamodel: management: unix socket default fix

2 years agodoc/manager-client: slight clarifications
Oto Šťáva [Mon, 18 Sep 2023 07:35:20 +0000 (09:35 +0200)] 
doc/manager-client: slight clarifications

2 years agokresctl: improve default connection behaviour
Oto Šťáva [Fri, 15 Sep 2023 13:42:35 +0000 (15:42 +0200)] 
kresctl: improve default connection behaviour

It now searches `/etc/knot-resolver/config.yml` for `management`
configuration first, when no `--config` or `--socket` is specified.

2 years agokresctl: document --config and environment variable
Oto Šťáva [Fri, 15 Sep 2023 13:03:52 +0000 (15:03 +0200)] 
kresctl: document --config and environment variable

2 years agomanager, kresctl: allow environment variables to specify paths
Oto Šťáva [Thu, 14 Sep 2023 12:00:28 +0000 (14:00 +0200)] 
manager, kresctl: allow environment variables to specify paths

This is a bigger feature commit for development convenience with Knot
Resolver Manager. Firstly, it allows the use of `KRES_MANAGER_CONFIG`
and `KRES_MANAGER_RUNTIME` environment variables to specify the paths to
the configuration file and Knot Resolver runtime directory. This lets us
create local workspace scripts with separate configurations e.g. like
this:

```sh
script_dir="$(dirname "$(readlink -f "$0")")"
export KRES_MANAGER_RUNTIME="$script_dir"
export KRES_MANAGER_CONFIG="$script_dir/config.yaml"
exec ~/Projects/knot/knot-resolver/manager/poe $@
```

This ties nicely into the second part, which is that `kresctl` is now
able to retrieve the management socket/address directly from the
declarative configuration file of Knot Resolver. This again increases
convenience for developers who may wish to change these often, and not
have to specify/change them every time they want to execute `kresctl`
from the command line.

`kresctl` adds a new `--config` option to specify the path to the
configuration file via command line arguments, and also respects the
same `KRES_MANAGER_CONFIG` environment variable, when the argument is
not specified.

Co-authored-by: Aleš Mrázek <ales.mrazek@nic.cz>
2 years agoMerge branch 'manager-config-examples' into '6.0' docs-develop-6-0-mvwoqi/deployments/2742
Aleš Mrázek [Thu, 21 Sep 2023 07:28:54 +0000 (09:28 +0200)] 
Merge branch 'manager-config-examples' into '6.0'

doc: config file examples and gettingstarted-config chapter

See merge request knot/knot-resolver!1454

2 years agodoc: language nits, rewordings docs-develop-mana-vde95c/deployments/2739
Oto Šťáva [Wed, 20 Sep 2023 13:22:32 +0000 (15:22 +0200)] 
doc: language nits, rewordings

2 years agomanager: ci: validate all config examples docs-develop-mana-vde95c/deployments/2736
Aleš Mrázek [Thu, 14 Sep 2023 23:22:31 +0000 (01:22 +0200)] 
manager: ci: validate all config examples

2 years agodoc/gettingstarted-config.rst: nit reformulation
Vladimír Čunát [Thu, 14 Sep 2023 15:50:45 +0000 (17:50 +0200)] 
doc/gettingstarted-config.rst: nit reformulation

When I see "configuration" it sounds more like a complete file,
but we only give bits of it that need adding other parts.

2 years agodoc: improve text for listening on wildcard addresses
Vladimír Čunát [Thu, 14 Sep 2023 15:42:40 +0000 (17:42 +0200)] 
doc: improve text for listening on wildcard addresses

The different addresses don't need to share an interface.
Also provide more details on what fails.

2 years agodoc/gettingstarted-config.rst: fix ISP part
Vladimír Čunát [Thu, 14 Sep 2023 15:41:34 +0000 (17:41 +0200)] 
doc/gettingstarted-config.rst: fix ISP part

outdated views schema, different IP value, etc.

2 years agodoc/gettingstarted-config.rst: improvements
Aleš Mrázek [Thu, 7 Sep 2023 13:18:12 +0000 (15:18 +0200)] 
doc/gettingstarted-config.rst: improvements

2 years agomanager: config examples
Aleš Mrázek [Tue, 8 Aug 2023 12:35:02 +0000 (14:35 +0200)] 
manager: config examples

2 years agoMerge !1458: doc: drop texinfo docs-develop-6-0-mvwoqi/deployments/2719
Vladimír Čunát [Sat, 16 Sep 2023 10:57:20 +0000 (12:57 +0200)] 
Merge !1458: doc: drop texinfo

2 years agodoc: drop texinfo docs-develop-remo-nlx8qp/deployments/2715
Oto Šťáva [Fri, 15 Sep 2023 12:27:19 +0000 (14:27 +0200)] 
doc: drop texinfo

Old legacy. The generated .texi sources cause a huge number of warnings
that we do not have a good way of fixing, and lately it stopped working
completely, without giving us any explanation as to what the problem is
(just exit code 1 and no *error* message).

2 years agoMerge !1439: lib/cache: avoid some overly aggressive answers docs-develop-6-0-mvwoqi/deployments/2713
Vladimír Čunát [Fri, 15 Sep 2023 08:12:32 +0000 (10:12 +0200)] 
Merge !1439: lib/cache: avoid some overly aggressive answers

2 years agolib/cache: avoid some overly aggressive answers
Vladimír Čunát [Thu, 3 Aug 2023 13:08:26 +0000 (15:08 +0200)] 
lib/cache: avoid some overly aggressive answers

2 years agoMerge !1456: manager/pyproject.toml: correct Python version for poethepoet docs-develop-6-0-mvwoqi/deployments/2702
Vladimír Čunát [Thu, 14 Sep 2023 08:36:26 +0000 (10:36 +0200)] 
Merge !1456: manager/pyproject.toml: correct Python version for poethepoet

2 years agomanager/pyproject.toml: correct Python version for poethepoet docs-develop-mana-d1bbun/deployments/2700
Oto Šťáva [Thu, 14 Sep 2023 08:07:30 +0000 (10:07 +0200)] 
manager/pyproject.toml: correct Python version for poethepoet

The former setup would cause subsequent runs of `poetry install` to
alternate between the `poethepoet` versions. Instead, we just want to
separate them for Python before 3.8 and Python from 3.8 onwards.

2 years agoMerge !1455: .gitlab-ci: fix Pages publishing docs-develop-6-0-mvwoqi/deployments/2696
Vladimír Čunát [Tue, 12 Sep 2023 14:23:09 +0000 (16:23 +0200)] 
Merge !1455: .gitlab-ci: fix Pages publishing

2 years ago.gitlab-ci: fix Pages publishing docs-develop-docs-1sm95q/deployments/2690
Oto Šťáva [Tue, 12 Sep 2023 12:27:09 +0000 (14:27 +0200)] 
.gitlab-ci: fix Pages publishing

This commit renames `docs:public` to `pages` as required by GitLab CI to
recognize Pages jobs correctly. It also adds the `public` directory into
`artifacts:paths`.

2 years agoMerge !1446: /local-data/subtrees/ improvements docs-develop-6-0-mvwoqi/deployments/2685
Vladimír Čunát [Tue, 12 Sep 2023 10:55:42 +0000 (12:55 +0200)] 
Merge !1446: /local-data/subtrees/ improvements

2 years agodoc/config-local-data: improve description of tags a bit docs-develop-subt-quv94y/deployments/2684
Vladimír Čunát [Mon, 4 Sep 2023 07:40:52 +0000 (09:40 +0200)] 
doc/config-local-data: improve description of tags a bit

2 years agolib/rules: small bugfix for views
Vladimír Čunát [Fri, 1 Sep 2023 09:40:44 +0000 (11:40 +0200)] 
lib/rules: small bugfix for views

key.len was shorter by (the current) rsp_len, which was confusing/wrong.

Discovered by triggering:
 assertion "i < key.len && i < key_leq.len" failed in kr_view_select_action

2 years agodatamodel: local_data_records(): swap argument order
Vladimír Čunát [Wed, 30 Aug 2023 09:43:00 +0000 (11:43 +0200)] 
datamodel: local_data_records(): swap argument order

Everywhere else we order `nodata` parameter before `ttl`.
Let's make it consistent to reduce potential for confusion.

2 years agodoc/config-local-data: advanced rules update
Aleš Mrázek [Mon, 28 Aug 2023 11:31:32 +0000 (13:31 +0200)] 
doc/config-local-data: advanced rules update

2 years agodatamodel: local-data/rules: 'records' added
Aleš Mrázek [Mon, 28 Aug 2023 11:16:03 +0000 (13:16 +0200)] 
datamodel: local-data/rules: 'records' added

2 years agodatamodel: local-data/rules: allow more combinations
Vladimír Čunát [Sat, 26 Aug 2023 16:31:47 +0000 (18:31 +0200)] 
datamodel: local-data/rules: allow more combinations

It's perhaps the main use case for 'redirect' to also define address(es)
for the apex.  An empty zone with address(es) in apex also makes sense.

2 years agodatamodel: local-data/rules: additional config
Aleš Mrázek [Fri, 25 Aug 2023 13:59:38 +0000 (15:59 +0200)] 
datamodel: local-data/rules: additional config

ttl, nodata and tags are configurable for hostname and address(es) pairs

2 years agodatamodel: /local-data/addresses*: use new C API
Vladimír Čunát [Thu, 24 Aug 2023 08:08:42 +0000 (10:08 +0200)] 
datamodel: /local-data/addresses*: use new C API

Direct usage without the hints module seems better.

2 years agodatamodel: /local-data: refactor policy_get_tagset macro
Vladimír Čunát [Thu, 24 Aug 2023 07:55:56 +0000 (09:55 +0200)] 
datamodel: /local-data: refactor policy_get_tagset macro

2 years agodatamodel: /local-data: refactor ttl
Vladimír Čunát [Thu, 24 Aug 2023 07:38:01 +0000 (09:38 +0200)] 
datamodel: /local-data: refactor ttl

2 years agomodules/hints,lib/rules: rework TTL defaults
Vladimír Čunát [Wed, 23 Aug 2023 09:58:39 +0000 (11:58 +0200)] 
modules/hints,lib/rules: rework TTL defaults

It was a bit wide, with 5s and 3h, and distinction between
these two "groups" of rules was a bit random wrt. TTL choice.
Now: 5m for user's rules and 1h for RFC-default rules.

I found it relatively hard to choose defaults, but at least for
user-supplied rules it's trivial to configure a different default.

2 years agodatamodel: /local-data/subtrees/*: drop parts that are not implemented
Vladimír Čunát [Sat, 12 Aug 2023 11:13:59 +0000 (13:13 +0200)] 
datamodel: /local-data/subtrees/*: drop parts that are not implemented

Otherwise we'd let confusing things pass all validations.

2 years agodatamodel: /local-data/subtrees: implement redirect and ttl
Vladimír Čunát [Tue, 8 Aug 2023 14:05:51 +0000 (16:05 +0200)] 
datamodel: /local-data/subtrees: implement redirect and ttl

Also refactor the C APIs, causing most of the diffs.

2 years agoscripts/gen-cdefs.sh: allow generating variables
Vladimír Čunát [Tue, 8 Aug 2023 10:13:22 +0000 (12:13 +0200)] 
scripts/gen-cdefs.sh: allow generating variables

Sometimes it is useful to access a global variable from lua.

2 years agohints: expose as C kr_rule_local_*()
Vladimír Čunát [Fri, 18 Aug 2023 17:13:12 +0000 (19:13 +0200)] 
hints: expose as C kr_rule_local_*()

At least the normal non-root hints.
We needed extended API for this functionality, and C API is simpler
for this, thanks to LuaJIT FFI.

However, this required moving code from the separate module.
The moved code is not changed in any way in this commit.
I considered it bad to keep such core code outside the main daemon+lib,
as it's not big.  Now LuaJIT FFI forced me to clean this up.

2 years agohints: tweak internal APIs a bit
Vladimír Čunát [Thu, 17 Aug 2023 15:11:40 +0000 (17:11 +0200)] 
hints: tweak internal APIs a bit

2 years agoMerge !1451: modeling: empty lists are not allowed docs-develop-6-0-mvwoqi/deployments/2669 docs-develop-docs-6zc2wj/deployments/2680
Vladimír Čunát [Mon, 4 Sep 2023 08:58:55 +0000 (10:58 +0200)] 
Merge !1451: modeling: empty lists are not allowed

2 years agodatamodel: types: ListOrItem: empty list not allowed
Aleš Mrázek [Mon, 28 Aug 2023 13:17:40 +0000 (15:17 +0200)] 
datamodel: types: ListOrItem: empty list not allowed

2 years agomodeling/base_schema.py: empty lists not allowed
Aleš Mrázek [Mon, 28 Aug 2023 13:11:07 +0000 (15:11 +0200)] 
modeling/base_schema.py: empty lists not allowed

2 years agoMerge !1453: Bump version to 6.0.2 docs-develop-6-0-mvwoqi/deployments/2659 docs-release-v6-0-daskak/deployments/2661 v6.0.2
Vladimír Čunát [Wed, 30 Aug 2023 15:02:38 +0000 (17:02 +0200)] 
Merge !1453: Bump version to 6.0.2

2 years agoscripts/make-archive.sh: more precise tag detection docs-develop-upda-signxn/deployments/2658
Vladimír Čunát [Wed, 30 Aug 2023 14:36:29 +0000 (16:36 +0200)] 
scripts/make-archive.sh: more precise tag detection

This works better in the current case when master branch with the most
recent 5.7.0 tag got merged into the 6.0 branch.  In that case we do not
want the most recent *generally* reachable tag, and git-describe has
probably good logic for this (using first-parent jumps I guess).

2 years agoBump version to 6.0.2 docs-develop-upda-signxn/deployments/2657
Jakub Ružička [Wed, 30 Aug 2023 14:26:56 +0000 (16:26 +0200)] 
Bump version to 6.0.2

2 years agoMerge !1452: .gitlab-ci.yml: use environments for docs versioning docs-develop-6-0-mvwoqi/deployments/2655
Vladimír Čunát [Wed, 30 Aug 2023 09:51:16 +0000 (11:51 +0200)] 
Merge !1452: .gitlab-ci.yml: use environments for docs versioning

2 years ago.gitlab-ci.yml: use environments for documentation versioning docs-develop-doc-e7z1sj/deployments/2653
Oto Šťáva [Tue, 29 Aug 2023 08:38:13 +0000 (10:38 +0200)] 
.gitlab-ci.yml: use environments for documentation versioning

This leverages Environments on GitLab to expose different versions of
Knot Resolver docs. The `docs:build` job builds the documentation and
exposes it via job artifacts. Then `docs:develop` (for branches) and
`docs:release` (for tags) take these artifacts and expose them via an
Environment link (an example of this in action may be seen at
[https://gitlab.nic.cz/ostava/knot-resolver/-/environments]).

There is also an optional, manually runnable `docs:public` job, which,
when run, propagates the documentation to the main GitLab Pages of the
project (e.g. [https://knot.pages.nic.cz/knot-resolver]) - this will
probably be mostly used for the latest release, although this setup
pretty much allows us to swap it for whatever version we like at any
time.

2 years agoMerge !1447: manager: run kresctl from the executor's working directory
Vladimír Čunát [Thu, 24 Aug 2023 08:18:56 +0000 (10:18 +0200)] 
Merge !1447: manager: run kresctl from the executor's working directory

2 years agomanager/poe: allow kresctl to be run under Python <3.8
Oto Šťáva [Thu, 24 Aug 2023 06:21:40 +0000 (08:21 +0200)] 
manager/poe: allow kresctl to be run under Python <3.8

2 years agomanager/poe: allow python3.7 when executed from manager dir
Aleš Mrázek [Wed, 23 Aug 2023 14:24:20 +0000 (16:24 +0200)] 
manager/poe: allow python3.7 when executed from manager dir

- pyproject.tom: poethepoet for python3.7

2 years agoci/images/manager: ensure usage of Python 3.7
Oto Šťáva [Tue, 22 Aug 2023 12:47:23 +0000 (14:47 +0200)] 
ci/images/manager: ensure usage of Python 3.7