Browse Source

Merge pull request #356 from github/route53-delete-fix-r2

Make sure both set-id and name match when finding rrset
pull/357/head
Ross McFarland 7 years ago
committed by GitHub
parent
commit
65ee60491e
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 2 deletions
  1. +5
    -2
      octodns/provider/route53.py
  2. +11
    -0
      tests/test_octodns_provider_route53.py

+ 5
- 2
octodns/provider/route53.py View File

@ -387,7 +387,8 @@ class _Route53DynamicValue(_Route53Record):
# ensures we have the right health check id when there's multiple
# potential matches)
for existing in existing_rrsets:
if self.identifer == existing.get('SetIdentifier', None):
if self.fqdn == existing.get('Name') and \
self.identifer == existing.get('SetIdentifier', None):
return {
'Action': action,
'ResourceRecordSet': existing,
@ -453,6 +454,7 @@ class _Route53GeoRecord(_Route53Record):
def mod(self, action, existing_rrsets):
geo = self.geo
set_identifier = geo.code
fqdn = self.fqdn
if action == 'DELETE':
# When deleting records try and find the original rrset so that
@ -460,7 +462,8 @@ class _Route53GeoRecord(_Route53Record):
# ensures we have the right health check id when there's multiple
# potential matches)
for existing in existing_rrsets:
if set_identifier == existing.get('SetIdentifier', None):
if fqdn == existing.get('Name') and \
set_identifier == existing.get('SetIdentifier', None):
return {
'Action': action,
'ResourceRecordSet': existing,


+ 11
- 0
tests/test_octodns_provider_route53.py View File

@ -2075,9 +2075,15 @@ class TestRoute53Records(TestCase):
candidates = [
# Empty, will test no SetIdentifier
{},
# Non-matching
{
'SetIdentifier': 'not-a-match',
},
# Same set-id, different name
{
'Name': 'not-a-match',
'SetIdentifier': 'x12346z',
},
rrset,
]
@ -2122,6 +2128,11 @@ class TestRoute53Records(TestCase):
{
'SetIdentifier': 'not-a-match',
},
# Same set-id, different name
{
'Name': 'not-a-match',
'SetIdentifier': 'x12346z',
},
rrset,
]


Loading…
Cancel
Save