annotations

package
v0.18.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 25, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
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

func HostnamesFromAnnotations(input map[string]string) []string

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

func InternalHostnamesFromAnnotations(input map[string]string) []string

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

func ParseFilter(annotationFilter string) (labels.Selector, error)

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

func SplitHostnameAnnotation(input string) []string

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

func TTLFromAnnotations(annotations map[string]string, resource string) endpoint.TTL

TTLFromAnnotations extracts the TTL from the annotations of the given resource.

func TargetsFromTargetAnnotation

func TargetsFromTargetAnnotation(annotations map[string]string) endpoint.Targets

TargetsFromTargetAnnotation gets endpoints from optional "target" annotation. Returns empty endpoints array if none are found.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL