From 07de11c75aa662bb758c79627d0658a8662700db Mon Sep 17 00:00:00 2001 From: NaiJi Date: Fri, 6 Jan 2023 19:28:52 +0400 Subject: [PATCH] fix: Implement correct DNS entries creation and deletion --- .../digital_ocean_dns/digital_ocean_dns.dart | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/logic/api_maps/rest_maps/dns_providers/digital_ocean_dns/digital_ocean_dns.dart b/lib/logic/api_maps/rest_maps/dns_providers/digital_ocean_dns/digital_ocean_dns.dart index d2359e87..b98a2794 100644 --- a/lib/logic/api_maps/rest_maps/dns_providers/digital_ocean_dns/digital_ocean_dns.dart +++ b/lib/logic/api_maps/rest_maps/dns_providers/digital_ocean_dns/digital_ocean_dns.dart @@ -105,12 +105,15 @@ class DigitalOceanDnsApi extends DnsProviderApi { final Dio client = await getClient(); try { + const String ignoreType = 'SOA'; final List allDeleteFutures = []; final List records = await getDnsRecords(domain: domain); for (final record in records) { - allDeleteFutures.add( - client.delete('/domains/$domainName/records/${record.id}'), - ); + if (record.type != ignoreType) { + allDeleteFutures.add( + client.delete('/domains/$domainName/records/${record.id}'), + ); + } } await Future.wait(allDeleteFutures); } catch (e) { @@ -186,7 +189,7 @@ class DigitalOceanDnsApi extends DnsProviderApi { data: { 'type': record.type, 'name': record.name, - 'data': record.content, + 'data': record.type == 'MX' ? '@' : record.content, 'ttl': record.ttl, 'priority': record.priority, },