Documentation
¶
Index ¶
- Constants
- func HostnamesFromAnnotations(input map[string]string) []string
- func InternalHostnamesFromAnnotations(input map[string]string) []string
- func ParseFilter(annotationFilter string) (labels.Selector, error)
- func ProviderSpecificAnnotations(annotations map[string]string) (endpoint.ProviderSpecific, string)
- func SplitHostnameAnnotation(input string) []string
- func TTLFromAnnotations(annotations map[string]string, resource string) endpoint.TTL
- func TargetsFromTargetAnnotation(annotations map[string]string) endpoint.Targets
Constants ¶
const ( // CloudflareProxiedKey The annotation used for determining if traffic will go through Cloudflare CloudflareProxiedKey = "external-dns.alpha.kubernetes.io/cloudflare-proxied" CloudflareCustomHostnameKey = "external-dns.alpha.kubernetes.io/cloudflare-custom-hostname" CloudflareRegionKey = "external-dns.alpha.kubernetes.io/cloudflare-region-key" CloudflareRecordCommentKey = "external-dns.alpha.kubernetes.io/cloudflare-record-comment" AWSPrefix = "external-dns.alpha.kubernetes.io/aws-" SCWPrefix = "external-dns.alpha.kubernetes.io/scw-" WebhookPrefix = "external-dns.alpha.kubernetes.io/webhook-" CloudflarePrefix = "external-dns.alpha.kubernetes.io/cloudflare-" TtlKey = "external-dns.alpha.kubernetes.io/ttl" SetIdentifierKey = "external-dns.alpha.kubernetes.io/set-identifier" AliasKey = "external-dns.alpha.kubernetes.io/alias" TargetKey = "external-dns.alpha.kubernetes.io/target" // The annotation used for figuring out which controller is responsible ControllerKey = "external-dns.alpha.kubernetes.io/controller" // The annotation used for defining the desired hostname HostnameKey = "external-dns.alpha.kubernetes.io/hostname" // The annotation used for specifying whether the public or private interface address is used AccessKey = "external-dns.alpha.kubernetes.io/access" // The annotation used for specifying the type of endpoints to use for headless services EndpointsTypeKey = "external-dns.alpha.kubernetes.io/endpoints-type" // The annotation used to determine the source of hostnames for ingresses. This is an optional field - all // available hostname sources are used if not specified. IngressHostnameSourceKey = "external-dns.alpha.kubernetes.io/ingress-hostname-source" // The value of the controller annotation so that we feel responsible ControllerValue = "dns-controller" // The annotation used for defining the desired hostname InternalHostnameKey = "external-dns.alpha.kubernetes.io/internal-hostname" )
Variables ¶
This section is empty.
Functions ¶
func HostnamesFromAnnotations ¶
HostnamesFromAnnotations extracts the hostnames from the given annotations map. It returns a slice of hostnames if the HostnameKey annotation is present, otherwise it returns nil.
func InternalHostnamesFromAnnotations ¶
InternalHostnamesFromAnnotations extracts the internal hostnames from the given annotations map. It returns a slice of internal hostnames if the InternalHostnameKey annotation is present, otherwise it returns nil.
func ParseFilter ¶
ParseFilter parses an annotation filter string into a labels.Selector. Returns nil if the annotation filter is invalid.
func ProviderSpecificAnnotations ¶
func ProviderSpecificAnnotations(annotations map[string]string) (endpoint.ProviderSpecific, string)
func SplitHostnameAnnotation ¶
SplitHostnameAnnotation splits a comma-separated hostname annotation string into a slice of hostnames. It trims any leading or trailing whitespace and removes any spaces within the anno
func TTLFromAnnotations ¶
TTLFromAnnotations extracts the TTL from the annotations of the given resource.
Types ¶
This section is empty.