From c62a85a003f7d007555641a9bcded84a115820ce Mon Sep 17 00:00:00 2001 From: Tom Limoncelli Date: Mon, 2 Jan 2023 10:17:44 -0500 Subject: [PATCH] MSDNS: Adopt diff2 in compatibility mode (#1893) --- providers/msdns/corrections.go | 43 +++++++++++++++++----------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/providers/msdns/corrections.go b/providers/msdns/corrections.go index f56572ec8..95989ebab 100644 --- a/providers/msdns/corrections.go +++ b/providers/msdns/corrections.go @@ -15,32 +15,31 @@ func (client *msdnsProvider) GenerateDomainCorrections(dc *models.DomainConfig, txtutil.SplitSingleLongTxt(dc.Records) // Autosplit long TXT records var corrections []*models.Correction - if !diff2.EnableDiff2 || true { // Remove "|| true" when diff2 version arrives - + var creates, dels, modifications diff.Changeset + var err error + if !diff2.EnableDiff2 { differ := diff.New(dc) - _, creates, dels, modifications, err := differ.IncrementalDiff(foundRecords) - if err != nil { - return nil, err - } - - // Generate changes. - corrections := []*models.Correction{} - for _, del := range dels { - corrections = append(corrections, client.deleteRec(client.dnsserver, dc.Name, del)) - } - for _, cre := range creates { - corrections = append(corrections, client.createRec(client.dnsserver, dc.Name, cre)...) - } - for _, m := range modifications { - corrections = append(corrections, client.modifyRec(client.dnsserver, dc.Name, m)) - } - return corrections, nil - + _, creates, dels, modifications, err = differ.IncrementalDiff(foundRecords) + } else { + differ := diff.NewCompat(dc) + _, creates, dels, modifications, err = differ.IncrementalDiff(foundRecords) + } + if err != nil { + return nil, err } - // Insert Future diff2 version here. - + // Generate changes. + for _, del := range dels { + corrections = append(corrections, client.deleteRec(client.dnsserver, dc.Name, del)) + } + for _, cre := range creates { + corrections = append(corrections, client.createRec(client.dnsserver, dc.Name, cre)...) + } + for _, m := range modifications { + corrections = append(corrections, client.modifyRec(client.dnsserver, dc.Name, m)) + } return corrections, nil + } func (client *msdnsProvider) deleteRec(dnsserver, domainname string, cor diff.Correlation) *models.Correction {