Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var RecordsContextKey = &contextKey{"records"}
RecordsContextKey is a context key. It can be used during ApplyChanges to access previously cached records. The associated value will be of type []*endpoint.Endpoint.
Functions ¶
func Difference ¶
Difference tells which entries need to be respectively added, removed, or left untouched for "current" to be transformed to "desired"
func EnsureTrailingDot ¶
EnsureTrailingDot ensures that the hostname receives a trailing dot if it hasn't already.
func SupportedRecordType ¶
SupportedRecordType returns true only for supported record types. Currently A, CNAME, SRV, and TXT record types are supported.
Types ¶
type BaseProvider ¶
type BaseProvider struct { }
func (BaseProvider) PropertyValuesEqual ¶
func (b BaseProvider) PropertyValuesEqual(name, previous, current string) bool
type Provider ¶
type Provider interface { Records(ctx context.Context) ([]*endpoint.Endpoint, error) ApplyChanges(ctx context.Context, changes *plan.Changes) error PropertyValuesEqual(name string, previous string, current string) bool }
Provider defines the interface DNS providers should implement.
type ZoneIDFilter ¶
type ZoneIDFilter struct {
ZoneIDs []string
}
ZoneIDFilter holds a list of zone ids to filter by
func NewZoneIDFilter ¶
func NewZoneIDFilter(zoneIDs []string) ZoneIDFilter
NewZoneIDFilter returns a new ZoneIDFilter given a list of zone ids
func (ZoneIDFilter) Match ¶
func (f ZoneIDFilter) Match(zoneID string) bool
Match checks whether a zone matches one of the provided zone ids
type ZoneIDName ¶
func (ZoneIDName) Add ¶
func (z ZoneIDName) Add(zoneID, zoneName string)
func (ZoneIDName) FindZone ¶
func (z ZoneIDName) FindZone(hostname string) (suitableZoneID, suitableZoneName string)
type ZoneTagFilter ¶
type ZoneTagFilter struct {
// contains filtered or unexported fields
}
ZoneTagFilter holds a list of zone tags to filter by
func NewZoneTagFilter ¶
func NewZoneTagFilter(tags []string) ZoneTagFilter
NewZoneTagFilter returns a new ZoneTagFilter given a list of zone tags
func (ZoneTagFilter) IsEmpty ¶
func (f ZoneTagFilter) IsEmpty() bool
IsEmpty returns true if there are no tags for the filter
type ZoneTypeFilter ¶
type ZoneTypeFilter struct {
// contains filtered or unexported fields
}
ZoneTypeFilter holds a zone type to filter for.
func NewZoneTypeFilter ¶
func NewZoneTypeFilter(zoneType string) ZoneTypeFilter
NewZoneTypeFilter returns a new ZoneTypeFilter given a zone type to filter for.
func (ZoneTypeFilter) Match ¶
func (f ZoneTypeFilter) Match(zone *route53.HostedZone) bool
Match checks whether a zone matches the zone type that's filtered for.