Documentation ¶
Index ¶
- Constants
- Variables
- func AlignHostname(host string) string
- func CalcMetaRecordDomainNameForValidation(name string) string
- func MapFromProvider(name DNSSetName, rs *RecordSet) (DNSSetName, *RecordSet)
- func MapToProvider(rtype string, dnsset *DNSSet, base string) (DNSSetName, *RecordSet)
- func NormalizeHostname(host string) string
- func SupportedRecordType(t string) bool
- func ValidateDomainName(name string) error
- type Cache
- type DNSNameSet
- type DNSSet
- func (this *DNSSet) Clone() *DNSSet
- func (this *DNSSet) DeleteMetaAttr(name string)
- func (this *DNSSet) DeleteTxtAttr(name string)
- func (this *DNSSet) GetKind() string
- func (this *DNSSet) GetMetaAttr(name string) string
- func (this *DNSSet) GetOwner() string
- func (this *DNSSet) GetTxtAttr(name string) string
- func (this *DNSSet) IsForeign(ownership Ownership) bool
- func (this *DNSSet) IsOwnedBy(ownership Ownership) bool
- func (this *DNSSet) MatchRecordTypeSubset(that *DNSSet, rtype string) bool
- func (this *DNSSet) SetKind(t string, prop ...bool) *DNSSet
- func (this *DNSSet) SetMetaAttr(name string, value string)
- func (this *DNSSet) SetOwner(ownerid string) *DNSSet
- func (this *DNSSet) SetRecordSet(rtype string, ttl int64, values ...string)
- func (this *DNSSet) SetTxtAttr(name string, value string)
- type DNSSetName
- type DNSSets
- func (dnssets DNSSets) AddRecordSet(name DNSSetName, policy *RoutingPolicy, rs *RecordSet)
- func (dnssets DNSSets) AddRecordSetFromProvider(dnsName string, rs *RecordSet)
- func (dnssets DNSSets) AddRecordSetFromProviderEx(setName DNSSetName, policy *RoutingPolicy, rs *RecordSet)
- func (dnssets DNSSets) Clone() DNSSets
- func (dnssets DNSSets) GetOwners() utils.StringSet
- func (dnssets DNSSets) RemoveRecordSet(name DNSSetName, recordSetType string)
- type Group
- type GroupInfo
- type GroupKey
- type Ownership
- type Record
- type RecordSet
- func (rs *RecordSet) Add(records ...*Record) *RecordSet
- func (rs *RecordSet) Clone() *RecordSet
- func (rs *RecordSet) DeleteAttr(name string)
- func (rs *RecordSet) DiffTo(set *RecordSet) (new Records, update Records, delete Records)
- func (rs *RecordSet) GetAttr(name string) string
- func (rs *RecordSet) Length() int
- func (rs *RecordSet) Match(set *RecordSet) bool
- func (rs *RecordSet) RecordString() string
- func (rs *RecordSet) SetAttr(name string, value string)
- func (rs *RecordSet) String() string
- type RecordSets
- type Records
- type RoutingPolicy
- type ZoneID
Constants ¶
View Source
const ( CONTROLLER_GROUP_DNS_CONTROLLERS = "dnscontrollers" CONTROLLER_GROUP_DNS_SOURCES = "dnssources" CONTROLLER_GROUP_REPLICATION = "replication" )
View Source
const ( DEFAULT_CLASS = "gardendns" ANNOTATION_GROUP = "dns.gardener.cloud" CLASS_ANNOTATION = ANNOTATION_GROUP + "/class" REALM_ANNOTATION = ANNOTATION_GROUP + "/realms" NOT_RATE_LIMITED_ANNOTATION = ANNOTATION_GROUP + "/not-rate-limited" DNS_ANNOTATION = ANNOTATION_GROUP + "/dnsnames" )
View Source
const ( // AnnotationIPStack is an optional annotation for DNSEntries to specify the IP stack. // Values are 'ipv4', 'dual-stack', and 'ipv6'. If not specified, 'ipv4' is assumed. // This annotation is currently only relevant for AWS-Route53 to generate alias target A and/or AAAA records. AnnotationIPStack = ANNOTATION_GROUP + "/ip-stack" AnnotationValueIPStackIPv4 = "ipv4" AnnotationValueIPStackIPDualStack = "dual-stack" AnnotationValueIPStackIPv6 = "ipv6" // AnnotationIgnore is an optional annotation for DNSEntries and source resources to ignore them on reconciliation. AnnotationIgnore = ANNOTATION_GROUP + "/ignore" // AnnotationHardIgnore is an optional annotation for a generated target DNSEntry to ignore it on reconciliation. // This annotation is not propagated from source objects to the target DNSEntry. // IMPORTANT NOTE: The entry is even ignored on deletion, so use with caution to avoid orphaned entries. AnnotationHardIgnore = ANNOTATION_GROUP + "/target-hard-ignore" )
View Source
const ( ATTR_OWNER = "owner" ATTR_PREFIX = "prefix" ATTR_KIND = "kind" ATTR_TIMESTAMP = "ts" ATTR_LOCKID = "lockid" )
View Source
const ( RS_META = "META" RS_ALIAS_A = "ALIAS" // provider specific alias for CNAME record (AWS alias target A) RS_ALIAS_AAAA = "ALIAS_AAAA" // provider specific alias for CNAME record (AWS alias target AAAA) )
View Source
const ( RS_TXT = "TXT" RS_CNAME = "CNAME" RS_A = "A" RS_AAAA = "AAAA" )
View Source
const ( // RoutingPolicyWeighted is a weighted routing policy (supported for AWS Route 53 and Google CloudDNS) RoutingPolicyWeighted = "weighted" // RoutingPolicyLatency is a latency based routing policy (supported for AWS Route 53) RoutingPolicyLatency = "latency" // RoutingPolicyGeoLocation is a geolocation based routing policy (supported for AWS Route 53 and Google CloudDNS) RoutingPolicyGeoLocation = "geolocation" // RoutingPolicyIPBased is an IP based routing policy (supported for AWS Route 53) RoutingPolicyIPBased = "ip-based" // RoutingPolicyFailover is failover routing policy (supported for AWS Route 53) RoutingPolicyFailover = "failover" )
View Source
const OPT_SETUP = "setup"
View Source
const RS_NS = "NS"
Variables ¶
View Source
var TxtPrefix = "comment-"
Functions ¶
func AlignHostname ¶
func CalcMetaRecordDomainNameForValidation ¶ added in v0.11.0
CalcMetaRecordDomainNameForValidation returns domain name of metadata TXT DNS record if globally defined prefix is used. As it does not consider the zone, it may be wrong for the zone base domain.
func MapFromProvider ¶
func MapFromProvider(name DNSSetName, rs *RecordSet) (DNSSetName, *RecordSet)
func MapToProvider ¶
func MapToProvider(rtype string, dnsset *DNSSet, base string) (DNSSetName, *RecordSet)
func NormalizeHostname ¶
func SupportedRecordType ¶
func ValidateDomainName ¶ added in v0.11.0
Types ¶
type DNSNameSet ¶ added in v0.13.0
type DNSNameSet map[DNSSetName]struct{}
func NewDNSNameSet ¶ added in v0.13.0
func NewDNSNameSet(names ...DNSSetName) DNSNameSet
func NewDNSNameSetFromStringSet ¶ added in v0.13.0
func NewDNSNameSetFromStringSet(dnsNames utils.StringSet, setIdentifier string) DNSNameSet
func (DNSNameSet) Add ¶ added in v0.13.0
func (s DNSNameSet) Add(name DNSSetName)
func (DNSNameSet) AddAll ¶ added in v0.13.0
func (s DNSNameSet) AddAll(names ...DNSSetName)
func (DNSNameSet) Contains ¶ added in v0.13.0
func (s DNSNameSet) Contains(name DNSSetName) bool
func (DNSNameSet) IsEmpty ¶ added in v0.13.0
func (s DNSNameSet) IsEmpty() bool
func (DNSNameSet) Remove ¶ added in v0.13.0
func (s DNSNameSet) Remove(name DNSSetName)
type DNSSet ¶
type DNSSet struct { Name DNSSetName Kind string UpdateGroup string Sets RecordSets RoutingPolicy *RoutingPolicy }
func NewDNSSet ¶
func NewDNSSet(name DNSSetName, routingPolicy *RoutingPolicy) *DNSSet
func (*DNSSet) DeleteMetaAttr ¶ added in v0.11.0
func (*DNSSet) DeleteTxtAttr ¶ added in v0.11.0
func (*DNSSet) GetMetaAttr ¶ added in v0.11.0
func (*DNSSet) GetTxtAttr ¶ added in v0.11.0
func (*DNSSet) MatchRecordTypeSubset ¶ added in v0.22.2
MatchRecordTypeSubset matches DNSSet equality for given record type subset.
func (*DNSSet) SetMetaAttr ¶ added in v0.11.0
func (*DNSSet) SetRecordSet ¶
func (*DNSSet) SetTxtAttr ¶ added in v0.11.0
type DNSSetName ¶ added in v0.13.0
type DNSSetName struct { // domain name of the record DNSName string // optional set identifier (used for record with routing policy) SetIdentifier string }
func (DNSSetName) Align ¶ added in v0.13.0
func (n DNSSetName) Align() DNSSetName
func (DNSSetName) Normalize ¶ added in v0.13.0
func (n DNSSetName) Normalize() DNSSetName
func (DNSSetName) String ¶ added in v0.13.0
func (n DNSSetName) String() string
func (DNSSetName) WithDNSName ¶ added in v0.13.0
func (n DNSSetName) WithDNSName(dnsName string) DNSSetName
type DNSSets ¶
type DNSSets map[DNSSetName]*DNSSet
func (DNSSets) AddRecordSet ¶
func (dnssets DNSSets) AddRecordSet(name DNSSetName, policy *RoutingPolicy, rs *RecordSet)
func (DNSSets) AddRecordSetFromProvider ¶
func (DNSSets) AddRecordSetFromProviderEx ¶ added in v0.13.0
func (dnssets DNSSets) AddRecordSetFromProviderEx(setName DNSSetName, policy *RoutingPolicy, rs *RecordSet)
func (DNSSets) RemoveRecordSet ¶
func (dnssets DNSSets) RemoveRecordSet(name DNSSetName, recordSetType string)
type RecordSet ¶
func (*RecordSet) DeleteAttr ¶ added in v0.11.0
func (*RecordSet) RecordString ¶
type RecordSets ¶
func (RecordSets) AddRecord ¶ added in v0.22.2
func (rss RecordSets) AddRecord(ty string, host string, ttl int64)
func (RecordSets) Clone ¶ added in v0.7.14
func (rss RecordSets) Clone() RecordSets
type RoutingPolicy ¶ added in v0.13.0
func NewRoutingPolicy ¶ added in v0.13.0
func NewRoutingPolicy(typ string, keyvalues ...string) *RoutingPolicy
func (*RoutingPolicy) CheckParameterKeys ¶ added in v0.13.0
func (p *RoutingPolicy) CheckParameterKeys(keys, optionalKeys []string) error
func (*RoutingPolicy) Clone ¶ added in v0.13.0
func (p *RoutingPolicy) Clone() *RoutingPolicy
Source Files ¶
Click to show internal directories.
Click to hide internal directories.