From b71fd634b9b3d39285c8e244e23108c2ba4b7313 Mon Sep 17 00:00:00 2001 From: asn-iac <134323752+asn-iac@users.noreply.github.com> Date: Wed, 3 Jan 2024 11:14:38 -0800 Subject: [PATCH] GCLOUD: display all correction messages affecting same label + type in a zone (#2759) --- providers/gcloud/gcloudProvider.go | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/providers/gcloud/gcloudProvider.go b/providers/gcloud/gcloudProvider.go index 31f6e7f4d..1eba0fff0 100644 --- a/providers/gcloud/gcloudProvider.go +++ b/providers/gcloud/gcloudProvider.go @@ -280,13 +280,25 @@ func (g *gcloudProvider) GetZoneRecordsCorrections(dc *models.DomainConfig, exis changedKeys := map[key]string{} for _, c := range create { - changedKeys[keyForRec(c.Desired)] = fmt.Sprintln(c) + msg := fmt.Sprintln(c) + if k, ok := changedKeys[keyForRec(c.Desired)]; ok { + msg = strings.Join([]string{k, msg}, "") + } + changedKeys[keyForRec(c.Desired)] = msg } for _, d := range toDelete { - changedKeys[keyForRec(d.Existing)] = fmt.Sprintln(d) + msg := fmt.Sprintln(d) + if k, ok := changedKeys[keyForRec(d.Existing)]; ok { + msg = strings.Join([]string{k, msg}, "") + } + changedKeys[keyForRec(d.Existing)] = msg } for _, m := range modify { - changedKeys[keyForRec(m.Existing)] = fmt.Sprintln(m) + msg := fmt.Sprintln(m) + if k, ok := changedKeys[keyForRec(m.Existing)]; ok { + msg = strings.Join([]string{k, msg}, "") + } + changedKeys[keyForRec(m.Existing)] = msg } if len(changedKeys) == 0 { return nil, nil