kubernetes-sigs/external-dns ? reverse-engineered prompt

Reverse engineered prompt

Build me a Kubernetes controller that keeps DNS records in sync with my Services and Ingresses.

I want to be able to mark a Service or Ingress with a hostname annotation, then have the app automatically create, update, and remove the matching DNS records in providers like Route 53 or Google Cloud DNS. It should watch the cluster, figure out the desired records from exposed Services and Ingresses, and safely manage only the records it owns using TXT ownership so it doesn’t mess up anything else in the zone.

Please make it work as a normal controller I can run in a cluster, with support for dry run and a one time sync for testing. It should handle common cases like LoadBalancer Services, internal hostnames, custom TTLs, and syncing only selected domains. If it makes sense, include the config, manifests, and a simple example I can try with an nginx Service. If you need current provider setup details, look them up online.

Are you gonna build this?

make sure you review the code using coderabbit

Try freeSponsored — opens CodeRabbit in a new tab