registry

package
v0.3.0-alpha.0 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2017 License: Apache-2.0 Imports: 8 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NoopRegistry

type NoopRegistry struct {
	// contains filtered or unexported fields
}

NoopRegistry implements registry interface without ownership directly propagating changes to dns provider

func NewNoopRegistry

func NewNoopRegistry(provider provider.Provider) (*NoopRegistry, error)

NewNoopRegistry returns new NoopRegistry object

func (*NoopRegistry) ApplyChanges

func (im *NoopRegistry) ApplyChanges(zone string, changes *plan.Changes) error

ApplyChanges propagates changes to the dns provider

func (*NoopRegistry) Records

func (im *NoopRegistry) Records(zone string) ([]*endpoint.Endpoint, error)

Records returns the current records from the dns provider

type Registry

type Registry interface {
	Records(zone string) ([]*endpoint.Endpoint, error)
	ApplyChanges(zone string, changes *plan.Changes) error
}

Registry is an interface which should enables ownership concept in external-dns Record(zone string) returns ALL records registered with DNS provider (TODO: for multi-zone support return all records) each entry includes owner information ApplyChanges(zone string, changes *plan.Changes) propagates the changes to the DNS Provider API and correspondingly updates ownership depending on type of registry being used

type TXTRegistry

type TXTRegistry struct {
	// contains filtered or unexported fields
}

TXTRegistry implements registry interface with ownership implemented via associated TXT records

func NewTXTRegistry

func NewTXTRegistry(provider provider.Provider, txtPrefix, ownerID string) (*TXTRegistry, error)

NewTXTRegistry returns new TXTRegistry object

func (*TXTRegistry) ApplyChanges

func (im *TXTRegistry) ApplyChanges(zone string, changes *plan.Changes) error

ApplyChanges updates dns provider with the changes for each created/deleted record it will also take into account TXT records for creation/deletion

func (*TXTRegistry) Records

func (im *TXTRegistry) Records(zone string) ([]*endpoint.Endpoint, error)

Records returns the current records from the registry excluding TXT Records If TXT records was created previously to indicate ownership its corresponding value will be added to the endpoints Labels map

Jump to

Keyboard shortcuts

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