Merge "Keep NS records for subdomains during Zone import."
This commit is contained in:
commit
dd611a025e
|
@ -2680,7 +2680,10 @@ class Service(service.RPCService, service.Service):
|
||||||
zone.type = 'PRIMARY'
|
zone.type = 'PRIMARY'
|
||||||
|
|
||||||
for rrset in list(zone.recordsets):
|
for rrset in list(zone.recordsets):
|
||||||
if rrset.type in ('NS', 'SOA'):
|
if rrset.type == 'SOA':
|
||||||
|
zone.recordsets.remove(rrset)
|
||||||
|
# subdomain NS records should be kept
|
||||||
|
elif rrset.type == 'NS' and rrset.name == zone.name:
|
||||||
zone.recordsets.remove(rrset)
|
zone.recordsets.remove(rrset)
|
||||||
|
|
||||||
except dnszone.UnknownOrigin:
|
except dnszone.UnknownOrigin:
|
||||||
|
|
|
@ -130,10 +130,9 @@ class APIV2ZoneImportExportTest(ApiV2TestCase):
|
||||||
# and dnspython considers that to be not equal.
|
# and dnspython considers that to be not equal.
|
||||||
imported.delete_rdataset(imported.origin, 'SOA')
|
imported.delete_rdataset(imported.origin, 'SOA')
|
||||||
exported.delete_rdataset(exported.origin, 'SOA')
|
exported.delete_rdataset(exported.origin, 'SOA')
|
||||||
# Delete NS records, since they won't be the same
|
# Delete NS records, except for delegated subdomains
|
||||||
imported.delete_rdataset(imported.origin, 'NS')
|
imported.delete_rdataset(imported.origin, 'NS')
|
||||||
exported.delete_rdataset(exported.origin, 'NS')
|
exported.delete_rdataset(exported.origin, 'NS')
|
||||||
imported.delete_rdataset('delegation', 'NS')
|
|
||||||
self.assertEqual(imported, exported)
|
self.assertEqual(imported, exported)
|
||||||
|
|
||||||
# Metadata tests
|
# Metadata tests
|
||||||
|
|
Loading…
Reference in New Issue