Skip to content

Commit a1e74eb

Browse files
authored
POWERDNS: Zone creation now abides by variant tags (#3830)
1 parent 8f13dd1 commit a1e74eb

36 files changed

+47
-45
lines changed

commands/createDomains.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func CreateDomains(args CreateDomainsArgs) error {
5656
for _, provider := range domain.DNSProviderInstances {
5757
if creator, ok := provider.Driver.(providers.ZoneCreator); ok {
5858
fmt.Println(" -", provider.Name)
59-
err := creator.EnsureZoneExists(domain.Name)
59+
err := creator.EnsureZoneExists(domain.Name, domain.Metadata)
6060
if err != nil {
6161
fmt.Printf("Error creating domain: %s\n", err)
6262
}

commands/ppreviewPush.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -493,7 +493,7 @@ func oneZonePopulate(zone *models.DomainConfig, zc *cmdZoneCache) error {
493493
var errs []error
494494
// Loop over all the providers configured for that zone:
495495
for _, provider := range zone.DNSProviderInstances {
496-
populateCorrections, err := generatePopulateCorrections(provider, zone.Name, zc)
496+
populateCorrections, err := generatePopulateCorrections(provider, zone, zc)
497497
if err != nil {
498498
errs = append(errs, err)
499499
}
@@ -645,7 +645,7 @@ func writeReport(report string, reportItems []*ReportItem) error {
645645
return nil
646646
}
647647

648-
func generatePopulateCorrections(provider *models.DNSProviderInstance, zoneName string, zcache *cmdZoneCache) ([]*models.Correction, error) {
648+
func generatePopulateCorrections(provider *models.DNSProviderInstance, zone *models.DomainConfig, zcache *cmdZoneCache) ([]*models.Correction, error) {
649649
lister, ok := provider.Driver.(providers.ZoneLister)
650650
if !ok {
651651
return nil, nil // We can't generate a list. No corrections are possible.
@@ -658,7 +658,7 @@ func generatePopulateCorrections(provider *models.DNSProviderInstance, zoneName
658658
}
659659
zones := *z
660660

661-
aceZoneName, _ := idna.ToASCII(zoneName)
661+
aceZoneName, _ := idna.ToASCII(zone.Name)
662662
if slices.Contains(zones, aceZoneName) {
663663
return nil, nil // zone exists. Nothing to do.
664664
}
@@ -671,7 +671,7 @@ func generatePopulateCorrections(provider *models.DNSProviderInstance, zoneName
671671

672672
return []*models.Correction{{
673673
Msg: fmt.Sprintf("Ensuring zone %q exists in %q", aceZoneName, provider.Name),
674-
F: func() error { return creator.EnsureZoneExists(aceZoneName) },
674+
F: func() error { return creator.EnsureZoneExists(aceZoneName, zone.Metadata) },
675675
}}, nil
676676
}
677677

providers/akamaiedgedns/akamaiEdgeDnsProvider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ func newEdgeDNSDSP(config map[string]string, metadata json.RawMessage) (provider
9999
}
100100

101101
// EnsureZoneExists creates a zone if it does not exist
102-
func (a *edgeDNSProvider) EnsureZoneExists(domain string) error {
102+
func (a *edgeDNSProvider) EnsureZoneExists(domain string, metadata map[string]string) error {
103103
if zoneDoesExist(domain) {
104104
printer.Debugf("Zone %s already exists\n", domain)
105105
return nil

providers/autodns/autoDnsProvider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ func (api *autoDNSProvider) GetZoneRecords(domain string, meta map[string]string
250250
return existingRecords, nil
251251
}
252252

253-
func (api *autoDNSProvider) EnsureZoneExists(domain string) error {
253+
func (api *autoDNSProvider) EnsureZoneExists(domain string, metadata map[string]string) error {
254254
// try to get zone
255255
_, err := api.getZone(domain)
256256

providers/azuredns/azureDnsProvider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -691,7 +691,7 @@ func (a *azurednsProvider) fetchRecordSets(zoneName string) ([]*adns.RecordSet,
691691
return records, nil
692692
}
693693

694-
func (a *azurednsProvider) EnsureZoneExists(domain string) error {
694+
func (a *azurednsProvider) EnsureZoneExists(domain string, metadata map[string]string) error {
695695
if _, ok := a.zones[domain]; ok {
696696
return nil
697697
}

providers/azureprivatedns/azurePrivateDnsProvider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -523,7 +523,7 @@ func (a *azurednsProvider) fetchRecordSets(zoneName string) ([]*adns.RecordSet,
523523
return records, nil
524524
}
525525

526-
func (a *azurednsProvider) EnsureZoneExists(domain string) error {
526+
func (a *azurednsProvider) EnsureZoneExists(domain string, metadata map[string]string) error {
527527
if _, ok := a.zones[domain]; ok {
528528
return nil
529529
}

providers/bunnydns/listzones.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ func (b *bunnydnsProvider) ListZones() ([]string, error) {
1616
return zoneNames, nil
1717
}
1818

19-
func (b *bunnydnsProvider) EnsureZoneExists(domain string) error {
19+
func (b *bunnydnsProvider) EnsureZoneExists(domain string, metadata map[string]string) error {
2020
_, err := b.findZoneByDomain(domain)
2121
if err == nil {
2222
return nil

providers/cloudflare/cloudflareProvider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -898,7 +898,7 @@ func getProxyMetadata(r *models.RecordConfig) map[string]string {
898898
}
899899

900900
// EnsureZoneExists creates a zone if it does not exist
901-
func (c *cloudflareProvider) EnsureZoneExists(domain string) error {
901+
func (c *cloudflareProvider) EnsureZoneExists(domain string, metadata map[string]string) error {
902902
if ok, err := c.zoneCache.HasZone(domain); err != nil || ok {
903903
return err
904904
}

providers/cloudns/cloudnsProvider.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ func (c *cloudnsProvider) GetZoneRecords(domain string, meta map[string]string)
284284
}
285285

286286
// EnsureZoneExists creates a zone if it does not exist
287-
func (c *cloudnsProvider) EnsureZoneExists(domain string) error {
287+
func (c *cloudnsProvider) EnsureZoneExists(domain string, metadata map[string]string) error {
288288
if _, ok, err := c.fetchDomainIndex(domain); err != nil {
289289
return err
290290
} else if ok { // zone already exists

providers/cnr/domains.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package cnr
33
// EnsureZoneExists returns an error
44
// * if access to dnszone is not allowed (not authorized) or
55
// * if it doesn't exist and creating it fails
6-
func (n *Client) EnsureZoneExists(domain string) error {
6+
func (n *Client) EnsureZoneExists(domain string, metadata map[string]string) error {
77
command := map[string]interface{}{
88
"COMMAND": "AddDNSZone",
99
"DNSZONE": domain,

0 commit comments

Comments
 (0)