provisioning-catalog/components/external_dns/nickel/contracts.ncl

23 lines
777 B
Text

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,
..
},
}