let _concerns_lib = import "schemas/lib/concerns.ncl" in { ExternalDns = { version | String, namespace | String | default = "external-dns", dns_provider | [| 'cloudflare, 'hetzner, 'aws |], zones | Array String, account_ref | String, secret_ref | String, txt_owner_id | String, policy | [| 'sync, 'upsert_only |] | default = 'upsert_only, sources | Array [| 'service, 'crd |] | default = ['service, 'crd], interval | String | default = "1m", mode | [| 'cluster |] | default = 'cluster, # ServiceConcerns umbrella (ADR-008). external-dns reconciliation controller — # owns DNS records, dns_provider preset. concerns | _concerns_lib.ServiceConcerns | optional, .. }, }