-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Description
What happened:
I am developing a webhook for external-dns. When creating a CNAME record via the annotation external-dns.alpha.kubernetes.io/target, the trailing dot is stripped from the value. In the external-dns code this is referred to as "Normalization".
I am unsure if this is the intended behavior and possibly needs some more documentation.
For my understanding: Is it a supported feature that only the prefix is used in external-dns.alpha.kubernetes.io/target?
For example, given:
external-dns.alpha.kubernetes.io/hostname: "foo.example.com"
external-dns.alpha.kubernetes.io/target: "bar"
the resulting DNS record would be a CNAME:
foo.example.com. -> bar.example.com.
What you expected to happen:
Either to receive the raw value in the Endpoint.Targets field, or have more documentation on this topic.
How to reproduce it (as minimally and precisely as possible):
- Create a Service with the annotations
external-dns.alpha.kubernetes.io/hostname: example.mydomain.deandexternal-dns.alpha.kubernetes.io/target: www.example.com. - When developing a webhook the value in the
endpoint.Targetsarray will have the trailing dot inwww.example.com.removed →www.example.com
Anything else we need to know?:
- Downstream issue in my webhook: trailing dot removed (tested for CNAMEs) hetzner/external-dns-hetzner-webhook#73
- Downstream PR (how I plan to fix this in my webhook): fix: CNAME resolution when External DNS strips trailing dots hetzner/external-dns-hetzner-webhook#77
Environment:
- External-DNS version (use
external-dns --version): v0.20.0 - DNS provider: Hetzner
- Others: