diff --git a/documentation/providers/powerdns.md b/documentation/providers/powerdns.md index 96ab12281..87e5ae86a 100644 --- a/documentation/providers/powerdns.md +++ b/documentation/providers/powerdns.md @@ -41,7 +41,10 @@ Following metadata are available:
Can be one of `Native`, `Master` or `Slave`, when not specified it defaults to `Native`.
Please see [PowerDNS documentation](https://doc.powerdns.com/authoritative/modes-of-operation.html) for explanation of the kinds.
**Note that these tokens are case-sensitive!** - +- `soa_edit_api` is the default SOA serial method that is used for zone created with the API +
Can be one of `DEFAULT`, `INCREASE`, `EPOCH`, `SOA-EDIT` or `SOA-EDIT-INCREASE`, default format is YYYYMMDD01. +
Please see [PowerDNS SOA-EDIT-DNSUPDATE documentation](https://doc.powerdns.com/authoritative/dnsupdate.html#soa-edit-dnsupdate-settings) for explanation of the kinds. +
**Note that these tokens are case-sensitive!** ## Usage An example configuration: diff --git a/providers/powerdns/dns.go b/providers/powerdns/dns.go index c9df0935f..140f1c74c 100644 --- a/providers/powerdns/dns.go +++ b/providers/powerdns/dns.go @@ -87,6 +87,7 @@ func (dsp *powerdnsProvider) EnsureZoneExists(domain string) error { DNSSec: dsp.DNSSecOnCreate, Nameservers: dsp.DefaultNS, Kind: dsp.ZoneKind, + SOAEditAPI: dsp.SOAEditAPI, }) return err } diff --git a/providers/powerdns/powerdnsProvider.go b/providers/powerdns/powerdnsProvider.go index 8b299500d..7fbbe3c85 100644 --- a/providers/powerdns/powerdnsProvider.go +++ b/providers/powerdns/powerdnsProvider.go @@ -3,6 +3,7 @@ package powerdns import ( "encoding/json" "fmt" + "github.com/mittwald/go-powerdns/apis/zones" "github.com/StackExchange/dnscontrol/v4/models" @@ -44,6 +45,7 @@ type powerdnsProvider struct { DefaultNS []string `json:"default_ns"` DNSSecOnCreate bool `json:"dnssec_on_create"` ZoneKind zones.ZoneKind `json:"zone_kind"` + SOAEditAPI string `json:"soa_edit_api,omitempty"` nameservers []*models.Nameserver }