dnsmasq owns its resolver format: node-zones is a template (ADR 0120) #111

Merged
jschoubben merged 1 commits from feat/roster-facts-are-templates into main 2026-09-26 23:51:29 +00:00
Owner

The node-zones fact was a path; the local=/address= syntax lived in the control plane. It is dnsmasq's configuration language, so it moves into dnsmasq's manifest as a template over the roster ({{.Suffix}}, {{range .Machines}}). The mesh renders it and reads none of it. Output is unchanged.

Lands together with the mesh-controller PR of the same name — the two are one schema step (facts became {path, template}), and dnsmasq is the only catalog module using facts.

The `node-zones` fact was a path; the `local=`/`address=` syntax lived in the control plane. It is dnsmasq's configuration language, so it moves into dnsmasq's manifest as a template over the roster (`{{.Suffix}}`, `{{range .Machines}}`). The mesh renders it and reads none of it. Output is unchanged. Lands together with the mesh-controller PR of the same name — the two are one schema step (facts became `{path, template}`), and dnsmasq is the only catalog module using facts.
jschoubben added 1 commit 2026-09-26 23:34:34 +00:00
The node-zones fact was a path; the local=/address= syntax lived in the
control plane. It is dnsmasq's configuration language, so it moves into
dnsmasq's manifest as a template over the roster. The mesh renders it; it
reads none of it. Output is unchanged.

Lands with mesh-controller's ADR 0120 change — the two are one schema step.
jschoubben merged commit f67f0ca9bc into main 2026-09-26 23:51:29 +00:00
jschoubben deleted branch feat/roster-facts-are-templates 2026-09-26 23:51:29 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-catalog#111