Skip to content

Commit 4aac687

Browse files
authored
chore(cloudflare): migrate DeleteDNSRecord() to new lib (#5780)
1 parent 61ca17c commit 4aac687

File tree

2 files changed

+16
-8
lines changed

2 files changed

+16
-8
lines changed

provider/cloudflare/cloudflare.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ type cloudFlareDNS interface {
112112
GetZone(ctx context.Context, zoneID string) (*zones.Zone, error)
113113
ListDNSRecords(ctx context.Context, params dns.RecordListParams) autoPager[dns.RecordResponse]
114114
CreateDNSRecord(ctx context.Context, params dns.RecordNewParams) (*dns.RecordResponse, error)
115-
DeleteDNSRecord(ctx context.Context, rc *cloudflarev0.ResourceContainer, recordID string) error
115+
DeleteDNSRecord(ctx context.Context, recordID string, params dns.RecordDeleteParams) error
116116
UpdateDNSRecord(ctx context.Context, rc *cloudflarev0.ResourceContainer, rp cloudflarev0.UpdateDNSRecordParams) error
117117
ListDataLocalizationRegionalHostnames(ctx context.Context, params addressing.RegionalHostnameListParams) autoPager[addressing.RegionalHostnameListResponse]
118118
CreateDataLocalizationRegionalHostname(ctx context.Context, params addressing.RegionalHostnameNewParams) error
@@ -161,8 +161,9 @@ func (z zoneService) UpdateDNSRecord(ctx context.Context, rc *cloudflarev0.Resou
161161
return err
162162
}
163163

164-
func (z zoneService) DeleteDNSRecord(ctx context.Context, rc *cloudflarev0.ResourceContainer, recordID string) error {
165-
return z.serviceV0.DeleteDNSRecord(ctx, rc, recordID)
164+
func (z zoneService) DeleteDNSRecord(ctx context.Context, recordID string, params dns.RecordDeleteParams) error {
165+
_, err := z.service.DNS.Records.Delete(ctx, recordID, params)
166+
return err
166167
}
167168

168169
func (z zoneService) ListZones(ctx context.Context, params zones.ZoneListParams) autoPager[zones.Zone] {
@@ -668,7 +669,7 @@ func (p *CloudFlareProvider) submitChanges(ctx context.Context, changes []*cloud
668669
log.WithFields(logFields).Errorf("failed to find previous record: %v", change.ResourceRecord)
669670
continue
670671
}
671-
err := p.Client.DeleteDNSRecord(ctx, resourceContainer, recordID)
672+
err := p.Client.DeleteDNSRecord(ctx, recordID, dns.RecordDeleteParams{ZoneID: cloudflare.F(zoneID)})
672673
if err != nil {
673674
failedChange = true
674675
log.WithFields(logFields).Errorf("failed to delete record: %v", err)

provider/cloudflare/cloudflare_test.go

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ func (m *mockCloudFlareClient) ListDNSRecords(ctx context.Context, params dns.Re
179179
if zone, ok := m.Records[params.ZoneID.Value]; ok {
180180
for _, record := range zone {
181181
if strings.HasPrefix(record.Name, "newerror-list-") {
182-
m.DeleteDNSRecord(ctx, cloudflarev0.ResourceIdentifier(params.ZoneID.Value), record.ID)
182+
m.DeleteDNSRecord(ctx, record.ID, dns.RecordDeleteParams{ZoneID: params.ZoneID})
183183
iter.err = errors.New("failed to list erroring DNS record")
184184
return iter
185185
}
@@ -208,13 +208,14 @@ func (m *mockCloudFlareClient) UpdateDNSRecord(ctx context.Context, rc *cloudfla
208208
return nil
209209
}
210210

211-
func (m *mockCloudFlareClient) DeleteDNSRecord(ctx context.Context, rc *cloudflarev0.ResourceContainer, recordID string) error {
211+
func (m *mockCloudFlareClient) DeleteDNSRecord(ctx context.Context, recordID string, params dns.RecordDeleteParams) error {
212+
zoneID := params.ZoneID.String()
212213
m.Actions = append(m.Actions, MockAction{
213214
Name: "Delete",
214-
ZoneId: rc.Identifier,
215+
ZoneId: zoneID,
215216
RecordId: recordID,
216217
})
217-
if zone, ok := m.Records[rc.Identifier]; ok {
218+
if zone, ok := m.Records[zoneID]; ok {
218219
if _, ok := zone[recordID]; ok {
219220
name := zone[recordID].Name
220221
delete(zone, recordID)
@@ -3337,4 +3338,10 @@ func TestZoneService(t *testing.T) {
33373338
require.Empty(t, iter.Current())
33383339
require.ErrorIs(t, iter.Err(), context.Canceled)
33393340
})
3341+
3342+
t.Run("DeleteDNSRecord", func(t *testing.T) {
3343+
t.Parallel()
3344+
err := client.DeleteDNSRecord(ctx, "1234", dns.RecordDeleteParams{ZoneID: cloudflare.F("foo")})
3345+
assert.ErrorIs(t, err, context.Canceled)
3346+
})
33403347
}

0 commit comments

Comments
 (0)