Keep options in a fixed order, and say which block a diff hunk is in
Options of a block (server options, a view, a zone) are listed and
written grouped by topic, alphabetical within a group, so the same
option is in the same place everywhere. Top-level statements keep the
order they were added in.
named.conf diffs add the enclosing blocks to each hunk header, like
git's function context: @@ -50,6 +49,8 @@ view "internal" {.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
73d97ecc0a
commit
b097e10bef
9 files changed
+326
-3
No files matched your search
+3
-1
@@ -444,7 +444,9 @@ listing with `?changeset=` marks them `pending`.
|
||||
| GET / PATCH | `/settings` | `{"nameservers": [...], "rname": "...", "default_ttl": 3600, "refresh": ..., "retry": ..., "expire": ..., "negative_ttl": ..., "serial_policy": "date"}` |
|
||||
|
||||
Option values are named.conf syntax without the final semicolon. They are
|
||||
checked against the BIND 9.20 grammar for that scope.
|
||||
checked against the BIND 9.20 grammar for that scope. `position` only
|
||||
orders top-level statements; the options of a block are always listed and
|
||||
written in Jarl's fixed order (docs/concepts.md).
|
||||
|
||||
### Catalogs and search
|
||||
|
||||
|
||||
+9
-1
@@ -68,7 +68,9 @@ both, using a single mechanism:
|
||||
* `POST /api/v1/apply` (CLI: `jarl apply -f changes.yaml`) applies a list of
|
||||
operations as one changeset in a single request.
|
||||
* `?dry_run=1` (CLI: `--dry-run`) runs the whole pipeline except installing
|
||||
files and reloading named, and shows the problems and the diff.
|
||||
files and reloading named, and shows the problems and the diff. Each
|
||||
part of a named.conf diff says which block it is in, after the `@@`
|
||||
line numbers: `@@ -50,6 +49,8 @@ view "internal" {`.
|
||||
|
||||
**Why bundling matters.** Some changes only make sense together. Turning
|
||||
`www` from an A record into a CNAME means deleting the A record and adding
|
||||
@@ -159,6 +161,12 @@ RFC 1982 arithmetic.
|
||||
Jarl checks them before named does. Statements that Jarl manages itself
|
||||
(`zone`, `view`, `acl`, `key`, a zone's `type`/`file`, a view's
|
||||
`match-clients`, ...) can't be set as raw options.
|
||||
Options of a block are kept in one fixed order, the same in named.conf,
|
||||
the web UI and the CLI: grouped (files, listening, access control,
|
||||
recursion and forwarding, DNSSEC, transfers and notify, then the rest),
|
||||
alphabetical within a group. So the same option is in the same place in
|
||||
every view and zone. Top-level statements stay in the order they were
|
||||
added.
|
||||
* **Settings** are Jarl's defaults for new zones: name servers, SOA contact
|
||||
and timers, default TTL, serial policy.
|
||||
|
||||
|
||||
Reference in new issue
Block a user