mirror of
https://github.com/github/octodns.git
synced 2024-05-11 05:55:00 +00:00
Implement populate exists for PowerDnsProvider
This commit is contained in:
@@ -187,8 +187,10 @@ class PowerDnsBaseProvider(BaseProvider):
|
|||||||
raise
|
raise
|
||||||
|
|
||||||
before = len(zone.records)
|
before = len(zone.records)
|
||||||
|
exists = False
|
||||||
|
|
||||||
if resp:
|
if resp:
|
||||||
|
exists = True
|
||||||
for rrset in resp.json()['rrsets']:
|
for rrset in resp.json()['rrsets']:
|
||||||
_type = rrset['type']
|
_type = rrset['type']
|
||||||
if _type == 'SOA':
|
if _type == 'SOA':
|
||||||
@@ -199,8 +201,9 @@ class PowerDnsBaseProvider(BaseProvider):
|
|||||||
source=self, lenient=lenient)
|
source=self, lenient=lenient)
|
||||||
zone.add_record(record)
|
zone.add_record(record)
|
||||||
|
|
||||||
self.log.info('populate: found %s records',
|
self.log.info('populate: found %s records, exists=%s',
|
||||||
len(zone.records) - before)
|
len(zone.records) - before, exists)
|
||||||
|
return exists
|
||||||
|
|
||||||
def _records_for_multiple(self, record):
|
def _records_for_multiple(self, record):
|
||||||
return [{'content': v, 'disabled': False}
|
return [{'content': v, 'disabled': False}
|
||||||
|
|||||||
@@ -106,6 +106,7 @@ class TestPowerDnsProvider(TestCase):
|
|||||||
plan = provider.plan(expected)
|
plan = provider.plan(expected)
|
||||||
self.assertEquals(expected_n, len(plan.changes))
|
self.assertEquals(expected_n, len(plan.changes))
|
||||||
self.assertEquals(expected_n, provider.apply(plan))
|
self.assertEquals(expected_n, provider.apply(plan))
|
||||||
|
self.assertTrue(plan.exists)
|
||||||
|
|
||||||
# Non-existent zone -> creates for every record in expected
|
# Non-existent zone -> creates for every record in expected
|
||||||
# OMG this is fucking ugly, probably better to ditch requests_mocks and
|
# OMG this is fucking ugly, probably better to ditch requests_mocks and
|
||||||
@@ -124,6 +125,7 @@ class TestPowerDnsProvider(TestCase):
|
|||||||
plan = provider.plan(expected)
|
plan = provider.plan(expected)
|
||||||
self.assertEquals(expected_n, len(plan.changes))
|
self.assertEquals(expected_n, len(plan.changes))
|
||||||
self.assertEquals(expected_n, provider.apply(plan))
|
self.assertEquals(expected_n, provider.apply(plan))
|
||||||
|
self.assertFalse(plan.exists)
|
||||||
|
|
||||||
with requests_mock() as mock:
|
with requests_mock() as mock:
|
||||||
# get 422's, unknown zone
|
# get 422's, unknown zone
|
||||||
|
|||||||
Reference in New Issue
Block a user