dns

package
v0.0.0-...-798ae07 Latest Latest
Warning

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

Go to latest
Published: Jan 2, 2023 License: GPL-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DNSProvider

type DNSProvider interface {

	/*
		Initialize is called by the control plane when a DNS provider is being
		started up, either on control plane bootup or by user request. Similar
		to the PersistenceProvider and SecretPersistenceProvider interfaces, this
		method should be used by the provider to initialize any connections that
		are needed for future operations, opening file descriptors for files that
		could be needed in the future, etc. If there is an error with initalizing
		this provider, the appropriate error should be returned and the control
		plane will assume the provider is dead.
	*/
	Initialize() error

	GetRecords() []Record

	PutRecord(Record) error

	DeleteRecord(Record) error

	UpdateRecord(Record, Record) error
}

DNSProvider is an interface that can be utilized by the control plane to configure/manage DNS records on an authoritative DNS server.

type DNSType

type DNSType string
const (
	A     DNSType = "A"
	AAAA  DNSType = "AAAA"
	CNAME DNSType = "CNAME"
	MX    DNSType = "MX"
	TXT   DNSType = "TXT"
	URI   DNSType = "URI"
	NS    DNSType = "NS"
)

type Record

type Record struct {
	Type  DNSType `json:"type" yaml:"type"`
	Host  string  `json:"host" yaml:"host"`
	Value string  `json:"value" yaml:"value"`
	TTL   uint    `json:"ttl" yaml:"ttl"`
}

Directories

Path Synopsis
backends

Jump to

Keyboard shortcuts

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