Documentation
¶
Overview ¶
Package dns provides an abstracted interface over various DNS providers using libdns.
Index ¶
- type ChangeSet
- type Provider
- func BuildProviders(cfgs []config.Provider) ([]Provider, error)
- func NewCloudflareProvider(cfg config.Provider) Provider
- func NewDigitalOceanProvider(cfg config.Provider) Provider
- func NewHetznerProvider(cfg config.Provider) Provider
- func NewLinodeProvider(cfg config.Provider) Provider
- func NewNamecheapProvider(cfg config.Provider) Provider
- func NewPiholeProvider(cfg config.Provider) Provider
- func NewPowerDNSProvider(cfg config.Provider) Provider
- func NewRFC2136Provider(cfg config.Provider) Provider
- func NewRoute53Provider(cfg config.Provider) Provider
- func NewScalewayProvider(cfg config.Provider) Provider
- func NewUnifiProvider(cfg config.Provider) Provider
- type Record
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Provider ¶
type Provider interface {
Name() string
Scope() string
Zones() []string
Force() bool
Records(ctx context.Context, zone string) ([]Record, error)
Apply(ctx context.Context, zone string, changes ChangeSet) error
}
func NewCloudflareProvider ¶
NewCloudflareProvider creates a new Cloudflare DNS provider wrapped for relayd.
func NewDigitalOceanProvider ¶
NewDigitalOceanProvider creates a new DigitalOcean DNS provider wrapped for relayd.
func NewHetznerProvider ¶ added in v0.1.2
NewHetznerProvider creates a new Hetzner DNS provider wrapped for relayd.
func NewLinodeProvider ¶ added in v0.1.2
NewLinodeProvider creates a new Linode DNS provider wrapped for relayd.
func NewNamecheapProvider ¶ added in v0.1.2
NewNamecheapProvider creates a new Namecheap DNS provider wrapped for relayd.
func NewPiholeProvider ¶
NewPiholeProvider creates a new Pi-hole provider wrapped for relayd. Pi-hole does not support TXT records, so force mode is always enabled to ensure proper cleanup of stale records without TXT-based ownership tracking.
func NewPowerDNSProvider ¶
NewPowerDNSProvider creates a new PowerDNS provider wrapped for relayd.
func NewRFC2136Provider ¶
NewRFC2136Provider creates a new RFC2136 provider wrapped for relayd.
func NewRoute53Provider ¶
NewRoute53Provider creates a new Route53 DNS provider wrapped for relayd.
func NewScalewayProvider ¶ added in v0.1.2
NewScalewayProvider creates a new Scaleway DNS provider wrapped for relayd.
func NewUnifiProvider ¶
NewUnifiProvider creates a new UniFi DNS provider wrapped for relayd.