From 48c40ae1cd4e0c0a2b6aaf0141c7111822ac7cd3 Mon Sep 17 00:00:00 2001 From: Marcos Mendez Date: Thu, 23 Mar 2023 11:34:11 -0400 Subject: fix: clouddns plugin answers limited to one response (#5986) * inserts all records in the loop. checks for insert errors. adds test. fixes #5985 Signed-off-by: Marcos Mendez --- plugin/clouddns/clouddns.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'plugin/clouddns/clouddns.go') diff --git a/plugin/clouddns/clouddns.go b/plugin/clouddns/clouddns.go index e09c247be..0e31a40cd 100644 --- a/plugin/clouddns/clouddns.go +++ b/plugin/clouddns/clouddns.go @@ -161,16 +161,18 @@ func updateZoneFromRRS(rrs *gcp.ResourceRecordSetsListResponse, z *file.Zone) er if rr.Type == "CNAME" || rr.Type == "PTR" { value = dns.Fqdn(value) } - // Assemble RFC 1035 conforming record to pass into dns scanner. rfc1035 = fmt.Sprintf("%s %d IN %s %s", dns.Fqdn(rr.Name), rr.Ttl, rr.Type, value) r, err = dns.NewRR(rfc1035) if err != nil { return fmt.Errorf("failed to parse resource record: %v", err) } - } - z.Insert(r) + err = z.Insert(r) + if err != nil { + return fmt.Errorf("failed to insert record: %v", err) + } + } } return nil } -- cgit v1.2.3