From 5f2dd2fdf22238e62653acda693e836c2d24db0d Mon Sep 17 00:00:00 2001 From: Tom Limoncelli Date: Sun, 1 Jan 2023 13:18:37 -0500 Subject: [PATCH] SOFTLAYER: Adopt diff2 in compatibility mode (#1901) --- providers/softlayer/softlayerProvider.go | 62 ++++++++++++------------ 1 file changed, 30 insertions(+), 32 deletions(-) diff --git a/providers/softlayer/softlayerProvider.go b/providers/softlayer/softlayerProvider.go index c968313ec..736828631 100644 --- a/providers/softlayer/softlayerProvider.go +++ b/providers/softlayer/softlayerProvider.go @@ -82,40 +82,38 @@ func (s *softlayerProvider) GetDomainCorrections(dc *models.DomainConfig) ([]*mo } var corrections []*models.Correction - if !diff2.EnableDiff2 || true { // Remove "|| true" when diff2 version arrives - - _, create, delete, modify, err := diff.New(dc).IncrementalDiff(actual) - if err != nil { - return nil, err - } - - for _, del := range delete { - existing := del.Existing.Original.(datatypes.Dns_Domain_ResourceRecord) - corrections = append(corrections, &models.Correction{ - Msg: del.String(), - F: s.deleteRecordFunc(*existing.Id), - }) - } - - for _, cre := range create { - corrections = append(corrections, &models.Correction{ - Msg: cre.String(), - F: s.createRecordFunc(cre.Desired, domain), - }) - } - - for _, mod := range modify { - existing := mod.Existing.Original.(datatypes.Dns_Domain_ResourceRecord) - corrections = append(corrections, &models.Correction{ - Msg: mod.String(), - F: s.updateRecordFunc(&existing, mod.Desired), - }) - } - - return corrections, nil + var create, deletes, modify diff.Changeset + if !diff2.EnableDiff2 { + _, create, deletes, modify, err = diff.New(dc).IncrementalDiff(actual) + } else { + _, create, deletes, modify, err = diff.NewCompat(dc).IncrementalDiff(actual) + } + if err != nil { + return nil, err } - // Insert Future diff2 version here. + for _, del := range deletes { + existing := del.Existing.Original.(datatypes.Dns_Domain_ResourceRecord) + corrections = append(corrections, &models.Correction{ + Msg: del.String(), + F: s.deleteRecordFunc(*existing.Id), + }) + } + + for _, cre := range create { + corrections = append(corrections, &models.Correction{ + Msg: cre.String(), + F: s.createRecordFunc(cre.Desired, domain), + }) + } + + for _, mod := range modify { + existing := mod.Existing.Original.(datatypes.Dns_Domain_ResourceRecord) + corrections = append(corrections, &models.Correction{ + Msg: mod.String(), + F: s.updateRecordFunc(&existing, mod.Desired), + }) + } return corrections, nil }