Split bind-external DNSRecords into one file per record #500

Merged
benvin merged 1 commits from benvin/split-bind-external-records into main 2026-09-27 17:28:38 +10:00
Member

A single records.yaml holding every DNSRecord means any record change touches a shared file, and deleting one record is a hunk edit rather than a file removal. One file per record under //.yaml makes each record independently editable and removable.

  • move acme-apex-ns to acme-unkin-net/ns/apex.yaml and acme-ns1-a to acme-unkin-net/a/ns1.yaml
  • add kustomization.yaml per zone and type directory, referencing directories from the parent
  • carry the delegation rationale onto the zone kustomization
  • drop records.yaml and reference the zone directory from the app kustomization

Rendered output is unchanged.

A single records.yaml holding every DNSRecord means any record change touches a shared file, and deleting one record is a hunk edit rather than a file removal. One file per record under <zone>/<type>/<record>.yaml makes each record independently editable and removable. - move acme-apex-ns to acme-unkin-net/ns/apex.yaml and acme-ns1-a to acme-unkin-net/a/ns1.yaml - add kustomization.yaml per zone and type directory, referencing directories from the parent - carry the delegation rationale onto the zone kustomization - drop records.yaml and reference the zone directory from the app kustomization Rendered output is unchanged.
unkin-agent added 1 commit 2026-09-27 11:18:10 +10:00
Split bind-external DNSRecords into one file per record
ci/woodpecker/pr/vector-test Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/kubeconform Pipeline was successful
7ffa9f40fb
Author
Member

nit: apps/base/bind-external/acme-unkin-net/ns/kustomization.yaml, .../a/kustomization.yaml — the per-type level holds one record each, so it costs 3 kustomizations for 2 records and restates spec.type → flatten to acme-unkin-net/{apex-ns,ns1-a}.yaml under the single zone kustomization.

nit: `apps/base/bind-external/acme-unkin-net/ns/kustomization.yaml`, `.../a/kustomization.yaml` — the per-type level holds one record each, so it costs 3 kustomizations for 2 records and restates `spec.type` → flatten to `acme-unkin-net/{apex-ns,ns1-a}.yaml` under the single zone kustomization.
benvin merged commit 7581578df1 into main 2026-09-27 17:28:38 +10:00
benvin deleted branch benvin/split-bind-external-records 2026-09-27 17:28:38 +10:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: unkin/argocd-apps#500