1
0
mirror of https://github.com/StackExchange/dnscontrol.git synced 2024-05-11 05:55:12 +00:00

Add "get-zone" command (#613)

* Add GetZoneRecords to DNSProvider interface
* dnscontrol now uses ufave/cli/v2
* NEW: get-zones.md
* HasRecordTypeName should be a method on models.Records not models.DomainConfig
* Implement BIND's GetZoneRecords
* new WriteZoneFile implemented
* go mod vendor
* Update docs to use get-zone instead of convertzone
* Add CanGetZone capability and update all providers.
* Get all zones for a provider at once (#626)
* implement GetZoneRecords for cloudflare
* munge cloudflare ttls
* Implement GetZoneRecords for cloudflare (#625)

Co-authored-by: Craig Peterson <192540+captncraig@users.noreply.github.com>
This commit is contained in:
Tom Limoncelli
2020-02-18 08:59:18 -05:00
committed by GitHub
parent cd680cc738
commit 87ad01d194
49 changed files with 1327 additions and 612 deletions

View File

@@ -4,20 +4,9 @@ package models
type DNSProvider interface {
GetNameservers(domain string) ([]*Nameserver, error)
GetDomainCorrections(dc *DomainConfig) ([]*Correction, error)
GetZoneRecords(domain string) (Records, error)
}
// DNSProvider3 will replace DNSProvider in 3.0.
// If you want to future-proof your code, implement these
// functions and implement GetDomainCorrections() as in
// providers/gandi_v5/gandi_v5Provider.go
//type DNSProvider3 interface {
// GetNameservers(domain string) ([]*Nameserver, error)
// GetZoneRecords(domain string) (Records, error)
// PrepFoundRecords(recs Records) Records
// PrepDesiredRecords(dc *DomainConfig)
// GenerateDomainCorrections(dc *DomainConfig, existing Records) ([]*Correction, error)
//}
// Registrar is an interface for Registrar plug-ins.
type Registrar interface {
GetRegistrarCorrections(dc *DomainConfig) ([]*Correction, error)