From 4e056d315dcdb84efe02fb80a3bde8dc5249f5c8 Mon Sep 17 00:00:00 2001 From: Arunothia Marappan Date: Thu, 16 Jul 2020 16:41:53 -0700 Subject: [PATCH] Forcing delete to happen before create --- octodns/provider/azuredns.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/octodns/provider/azuredns.py b/octodns/provider/azuredns.py index 3d8122a..3909ca4 100644 --- a/octodns/provider/azuredns.py +++ b/octodns/provider/azuredns.py @@ -497,6 +497,10 @@ class AzureProvider(BaseProvider): azure_zone_name = desired.name[:len(desired.name) - 1] self._check_zone(azure_zone_name, create=True) + # Force the operation order to be Update() -> Delete() -> Create() + # This will help avoid problems in updating a CNAME record into an A record. + changes.reverse() + for change in changes: class_name = change.__class__.__name__ getattr(self, '_apply_{}'.format(class_name))(change)