providers

package
v0.0.0-...-823a405 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2021 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ProviderFor

func ProviderFor(ctx *types.ControllerContext, resource *dnsv1alpha1.DNSProvider) (types.Provider, error)

ProviderFor builds a new Provider from the given kubernetes resource.

func RegisterProviderConstructor

func RegisterProviderConstructor(name string, c ProviderContructor)

RegisterProviderConstructor will register a provider constructor. `name` is a unique name representing the key of the corresponding k8s resource.

Types

type Cloudflare

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

Cloudflare DNS provider.

func NewCloudflare

func NewCloudflare(log logr.Logger, zones []dnsname.Name, cf *cloudflare.API, proxiedByDefault bool) *Cloudflare

NewCloudflare creates a new instance of the Cloudflare provider.

func (*Cloudflare) DeleteRecord

func (cf *Cloudflare) DeleteRecord(zone dnsname.Name, resource v1alpha1.DNSRecord) error

DeleteRecord deletes the given RRset from Cloudflare.

func (*Cloudflare) UpdateRecord

func (cf *Cloudflare) UpdateRecord(zone dnsname.Name, resource v1alpha1.DNSRecord) error

UpdateRecord reconciles the given RRset with the records registered on Cloudflare.

func (*Cloudflare) Zones

func (cf *Cloudflare) Zones() []dnsname.Name

Zones returns a slice containing the DNS zones managed by this provider.

type Dummy

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

Dummy DNS provider for debugging.

func NewDummy

func NewDummy(log logr.Logger, zones []dnsname.Name) *Dummy

NewDummy creates a new instance of the Dummy provider.

func (*Dummy) DeleteRecord

func (dummy *Dummy) DeleteRecord(zone dnsname.Name, rrset v1alpha1.DNSRecord) error

DeleteRecord dummy noop.

func (*Dummy) UpdateRecord

func (dummy *Dummy) UpdateRecord(zone dnsname.Name, rrset v1alpha1.DNSRecord) error

UpdateRecord dummy noop.

func (*Dummy) Zones

func (dummy *Dummy) Zones() []dnsname.Name

Zones returns a slice containing the DNS zones managed by this provider.

type ProviderContructor

type ProviderContructor func(*types.ControllerContext, *dnsv1alpha1.DNSProvider) (types.Provider, error)

ProviderContructor constructs a Provider given a kubernetes resource and a Context.

type RFC2136

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

RFC2136 is a DNS provider which uses Dynamic DNS (https://tools.ietf.org/html/rfc2136) for updates to a backend server.

func NewRFC2136

func NewRFC2136(log logr.Logger, zones []dnsname.Name, nameserver string) *RFC2136

NewRFC2136 creates a new DNS provider which uses Dynamic DNS for updates.

func (*RFC2136) DeleteRecord

func (provider *RFC2136) DeleteRecord(zone dnsname.Name, resource v1alpha1.DNSRecord) error

DeleteRecord deletes a record from the backend server.

func (*RFC2136) UpdateRecord

func (provider *RFC2136) UpdateRecord(zone dnsname.Name, resource v1alpha1.DNSRecord) error

UpdateRecord updates a record set on the backend server.

func (*RFC2136) WithTsig

func (provider *RFC2136) WithTsig(secret, keyName, algorithm string) *RFC2136

WithTsig configures transaction signatures for DNS updates.

func (*RFC2136) Zones

func (provider *RFC2136) Zones() []dnsname.Name

Zones returns a slice containing the DNS zones managed by this provider.

Jump to

Keyboard shortcuts

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