Browse Source

Remove support for dynamic DNAME records as no provider currently

support them
pull/620/head
Jonathan Leroy 5 years ago
parent
commit
eec4c4f81c
No known key found for this signature in database GPG Key ID: 7A0BCBE3934842EA
4 changed files with 10 additions and 157 deletions
  1. +0
    -34
      tests/config/dynamic.tests.yaml
  2. +0
    -42
      tests/config/split/dynamic.tests./dname.yaml
  3. +10
    -14
      tests/test_octodns_provider_yaml.py
  4. +0
    -67
      tests/test_octodns_record.py

+ 0
- 34
tests/config/dynamic.tests.yaml View File

@ -109,40 +109,6 @@ cname:
- pool: iad
type: CNAME
value: target.unit.tests.
dname:
dynamic:
pools:
ams:
values:
- value: target-ams.unit.tests.
iad:
values:
- value: target-iad.unit.tests.
lax:
values:
- value: target-lax.unit.tests.
sea:
values:
- value: target-sea-1.unit.tests.
weight: 10
- value: target-sea-2.unit.tests.
weight: 14
rules:
- geos:
- EU-GB
pool: lax
- geos:
- EU
pool: ams
- geos:
- NA-US-CA
- NA-US-NC
- NA-US-OR
- NA-US-WA
pool: sea
- pool: iad
type: DNAME
value: target.unit.tests.
real-ish-a:
dynamic:
pools:


+ 0
- 42
tests/config/split/dynamic.tests./dname.yaml View File

@ -1,42 +0,0 @@
---
dname:
dynamic:
pools:
ams:
fallback: null
values:
- value: target-ams.unit.tests.
weight: 1
iad:
fallback: null
values:
- value: target-iad.unit.tests.
weight: 1
lax:
fallback: null
values:
- value: target-lax.unit.tests.
weight: 1
sea:
fallback: null
values:
- value: target-sea-1.unit.tests.
weight: 10
- value: target-sea-2.unit.tests.
weight: 14
rules:
- geos:
- EU-GB
pool: lax
- geos:
- EU
pool: ams
- geos:
- NA-US-CA
- NA-US-NC
- NA-US-OR
- NA-US-WA
pool: sea
- pool: iad
type: DNAME
value: target.unit.tests.

+ 10
- 14
tests/test_octodns_provider_yaml.py View File

@ -38,7 +38,7 @@ class TestYamlProvider(TestCase):
self.assertEquals(19, len(zone.records))
source.populate(dynamic_zone)
self.assertEquals(6, len(dynamic_zone.records))
self.assertEquals(5, len(dynamic_zone.records))
# Assumption here is that a clean round-trip means that everything
# worked as expected, data that went in came back out and could be
@ -68,11 +68,11 @@ class TestYamlProvider(TestCase):
# Dynamic plan
plan = target.plan(dynamic_zone)
self.assertEquals(6, len([c for c in plan.changes
self.assertEquals(5, len([c for c in plan.changes
if isinstance(c, Create)]))
self.assertFalse(isfile(dynamic_yaml_file))
# Apply it
self.assertEquals(6, target.apply(plan))
self.assertEquals(5, target.apply(plan))
self.assertTrue(isfile(dynamic_yaml_file))
# There should be no changes after the round trip
@ -137,10 +137,6 @@ class TestYamlProvider(TestCase):
self.assertTrue('value' in dyna)
# self.assertTrue('dynamic' in dyna)
dyna = data.pop('dname')
self.assertTrue('value' in dyna)
# self.assertTrue('dynamic' in dyna)
dyna = data.pop('real-ish-a')
self.assertTrue('values' in dyna)
# self.assertTrue('dynamic' in dyna)
@ -245,7 +241,7 @@ class TestSplitYamlProvider(TestCase):
self.assertEquals(19, len(zone.records))
source.populate(dynamic_zone)
self.assertEquals(6, len(dynamic_zone.records))
self.assertEquals(5, len(dynamic_zone.records))
with TemporaryDirectory() as td:
# Add some subdirs to make sure that it can create them
@ -265,11 +261,11 @@ class TestSplitYamlProvider(TestCase):
# Dynamic plan
plan = target.plan(dynamic_zone)
self.assertEquals(6, len([c for c in plan.changes
self.assertEquals(5, len([c for c in plan.changes
if isinstance(c, Create)]))
self.assertFalse(isdir(dynamic_zone_dir))
# Apply it
self.assertEquals(6, target.apply(plan))
self.assertEquals(5, target.apply(plan))
self.assertTrue(isdir(dynamic_zone_dir))
# There should be no changes after the round trip
@ -327,7 +323,7 @@ class TestSplitYamlProvider(TestCase):
self.assertTrue('dynamic' in dyna)
# Singular again.
for record_name in ('cname', 'dname', 'simple-weighted'):
for record_name in ('cname', 'simple-weighted'):
yaml_file = join(
dynamic_zone_dir, '{}.yaml'.format(record_name))
self.assertTrue(isfile(yaml_file))
@ -391,8 +387,8 @@ class TestOverridingYamlProvider(TestCase):
# Load the base, should see the 5 records
base.populate(zone)
got = {r.name: r for r in zone.records}
self.assertEquals(6, len(got))
# We get the "dynamic" A from the bae config
self.assertEquals(5, len(got))
# We get the "dynamic" A from the base config
self.assertTrue('dynamic' in got['a'].data)
# No added
self.assertFalse('added' in got)
@ -400,7 +396,7 @@ class TestOverridingYamlProvider(TestCase):
# Load the overrides, should replace one and add 1
override.populate(zone)
got = {r.name: r for r in zone.records}
self.assertEquals(7, len(got))
self.assertEquals(6, len(got))
# 'a' was replaced with a generic record
self.assertEquals({
'ttl': 3600,


+ 0
- 67
tests/test_octodns_record.py View File

@ -2670,73 +2670,6 @@ class TestDynamicRecords(TestCase):
self.assertTrue(rules)
self.assertEquals(cname_data['dynamic']['rules'][0], rules[0].data)
def test_simple_dname_weighted(self):
dname_data = {
'dynamic': {
'pools': {
'one': {
'values': [{
'value': 'one.dname.target.',
}],
},
'two': {
'values': [{
'value': 'two.dname.target.',
}],
},
'three': {
'values': [{
'weight': 12,
'value': 'three-1.dname.target.',
}, {
'weight': 32,
'value': 'three-2.dname.target.',
}]
},
},
'rules': [{
'geos': ['AF', 'EU'],
'pool': 'three',
}, {
'geos': ['NA-US-CA'],
'pool': 'two',
}, {
'pool': 'one',
}],
},
'ttl': 60,
'value': 'dname.target.',
}
dname = DnameRecord(self.zone, 'weighted', dname_data)
self.assertEquals('DNAME', dname._type)
self.assertEquals(dname_data['ttl'], dname.ttl)
self.assertEquals(dname_data['value'], dname.value)
dynamic = dname.dynamic
self.assertTrue(dynamic)
pools = dynamic.pools
self.assertTrue(pools)
self.assertEquals({
'value': 'one.dname.target.',
'weight': 1,
}, pools['one'].data['values'][0])
self.assertEquals({
'value': 'two.dname.target.',
'weight': 1,
}, pools['two'].data['values'][0])
self.assertEquals([{
'value': 'three-1.dname.target.',
'weight': 12,
}, {
'value': 'three-2.dname.target.',
'weight': 32,
}], pools['three'].data['values'])
rules = dynamic.rules
self.assertTrue(rules)
self.assertEquals(dname_data['dynamic']['rules'][0], rules[0].data)
def test_dynamic_validation(self):
# Missing pools
a_data = {


Loading…
Cancel
Save