# Functions
InMemoryWithDomain modifies the domain on which dns zones are filtered.
InMemoryWithLogging injects logging when ApplyChanges is called.
NewAWSProvider initializes a new AWS Route53 based Provider.
NewAzureProvider creates a new Azure provider.
NewCloudFlareProvider initializes a new CloudFlare DNS based Provider.
NewDigitalOceanProvider initializes a new DigitalOcean DNS based Provider.
NewDnsimpleProvider initializes a new Dnsimple based provider.
NewDomainFilter returns a new DomainFilter given a comma separated list of domains.
NewGoogleProvider initializes a new Google CloudDNS based Provider.
NewInfobloxProvider creates a new Infoblox provider.
NewInMemoryProvider returns InMemoryProvider DNS provider interface implementation.
NewZoneTypeFilter returns a new ZoneTypeFilter given a zone type to filter for.
# Constants
DigitalOceanCreate is a ChangeAction enum value.
DigitalOceanDelete is a ChangeAction enum value.
DigitalOceanUpdate is a ChangeAction enum value.
# Variables
ErrDuplicateRecordFound when record is repeated in create/update/delete.
ErrRecordAlreadyExists when create request is sent but record already exists.
ErrRecordNotFound when update/delete request is sent but record not found.
ErrZoneAlreadyExists error returned when zone cannot be created when it already exists.
ErrZoneNotFound error returned when specified zone does not exists.
# Structs
AWSProvider is an implementation of Provider for AWS Route53.
AzureProvider implements the DNS provider for Microsoft's Azure cloud platform.
CloudFlareProvider is an implementation of Provider for CloudFlare DNS.
DigitalOceanChange differentiates between ChangActions.
DigitalOceanProvider is an implementation of Provider for Digital Ocean's DNS.
DomainFilter holds a lists of valid domain names.
GoogleProvider is an implementation of Provider for Google CloudDNS.
InfobloxConfig clarifies the method signature.
InfobloxProvider implements the DNS provider for Infoblox.
InMemoryProvider - dns provider only used for testing purposes initialized as dns provider with no records.
ZoneTypeFilter holds a zone type to filter for.
# Interfaces
Provider defines the interface DNS providers should implement.
RecordsClient is an interface of dns.RecordClient that can be stubbed for testing.
Route53API is the subset of the AWS Route53 API that we actually use.
ZonesClient is an interface of dns.ZoneClient that can be stubbed for testing.
# Type aliases
InMemoryOption allows to extend in-memory provider.