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)