mirror of
https://github.com/github/octodns.git
synced 2024-05-11 05:55:00 +00:00
Add a AAAA dyanmic.tests example, comments
This commit is contained in:
@@ -322,10 +322,6 @@ class _GeoMixin(_ValuesMixin):
|
|||||||
pass
|
pass
|
||||||
return reasons
|
return reasons
|
||||||
|
|
||||||
# TODO: support 'value' as well
|
|
||||||
# TODO: move away from "data" hash to strict params, it's kind of leaking
|
|
||||||
# the yaml implementation into here and then forcing it back out into
|
|
||||||
# non-yaml providers during input
|
|
||||||
def __init__(self, zone, name, data, *args, **kwargs):
|
def __init__(self, zone, name, data, *args, **kwargs):
|
||||||
super(_GeoMixin, self).__init__(zone, name, data, *args, **kwargs)
|
super(_GeoMixin, self).__init__(zone, name, data, *args, **kwargs)
|
||||||
try:
|
try:
|
||||||
@@ -453,7 +449,8 @@ class _DynamicMixin(object):
|
|||||||
self.dynamic = dict(data['dynamic'])
|
self.dynamic = dict(data['dynamic'])
|
||||||
except:
|
except:
|
||||||
self.dynamic = {}
|
self.dynamic = {}
|
||||||
# TODO:
|
|
||||||
|
# TODO: implement all this
|
||||||
|
|
||||||
|
|
||||||
class Ipv4List(object):
|
class Ipv4List(object):
|
||||||
|
@@ -29,6 +29,36 @@ a:
|
|||||||
values:
|
values:
|
||||||
- 2.2.2.2
|
- 2.2.2.2
|
||||||
- 3.3.3.3
|
- 3.3.3.3
|
||||||
|
aaaa:
|
||||||
|
dynamic:
|
||||||
|
pools:
|
||||||
|
ams: 2601:642:500:e210:62f8:1dff:feb8:9471
|
||||||
|
iad:
|
||||||
|
- 2601:642:500:e210:62f8:1dff:feb8:9472
|
||||||
|
- 2601:642:500:e210:62f8:1dff:feb8:9473
|
||||||
|
lax: 2601:642:500:e210:62f8:1dff:feb8:9474
|
||||||
|
sea: 2601:642:500:e210:62f8:1dff:feb8:9475
|
||||||
|
rules:
|
||||||
|
- geo: EU-UK
|
||||||
|
pools:
|
||||||
|
10: iad
|
||||||
|
- geo: EU
|
||||||
|
pools:
|
||||||
|
10: ams
|
||||||
|
10: iad
|
||||||
|
- geos:
|
||||||
|
- NA-US-CA
|
||||||
|
- NA-US-OR
|
||||||
|
- NA-US-WA
|
||||||
|
pools:
|
||||||
|
25: iad
|
||||||
|
75: sea
|
||||||
|
- pools:
|
||||||
|
10: iad
|
||||||
|
type: AAAA
|
||||||
|
values:
|
||||||
|
- 2601:642:500:e210:62f8:1dff:feb8:947a
|
||||||
|
- 2601:644:500:e210:62f8:1dff:feb8:947a
|
||||||
cname:
|
cname:
|
||||||
dynamic:
|
dynamic:
|
||||||
pools:
|
pools:
|
||||||
|
@@ -34,7 +34,7 @@ class TestYamlProvider(TestCase):
|
|||||||
self.assertEquals(18, len(zone.records))
|
self.assertEquals(18, len(zone.records))
|
||||||
|
|
||||||
source.populate(dynamic_zone)
|
source.populate(dynamic_zone)
|
||||||
self.assertEquals(3, len(dynamic_zone.records))
|
self.assertEquals(4, len(dynamic_zone.records))
|
||||||
|
|
||||||
# Assumption here is that a clean round-trip means that everything
|
# Assumption here is that a clean round-trip means that everything
|
||||||
# worked as expected, data that went in came back out and could be
|
# worked as expected, data that went in came back out and could be
|
||||||
@@ -64,11 +64,11 @@ class TestYamlProvider(TestCase):
|
|||||||
|
|
||||||
# Dynamic plan
|
# Dynamic plan
|
||||||
plan = target.plan(dynamic_zone)
|
plan = target.plan(dynamic_zone)
|
||||||
self.assertEquals(3, len(filter(lambda c: isinstance(c, Create),
|
self.assertEquals(4, len(filter(lambda c: isinstance(c, Create),
|
||||||
plan.changes)))
|
plan.changes)))
|
||||||
self.assertFalse(isfile(dynamic_yaml_file))
|
self.assertFalse(isfile(dynamic_yaml_file))
|
||||||
# Apply it
|
# Apply it
|
||||||
self.assertEquals(3, target.apply(plan))
|
self.assertEquals(4, target.apply(plan))
|
||||||
self.assertTrue(isfile(dynamic_yaml_file))
|
self.assertTrue(isfile(dynamic_yaml_file))
|
||||||
|
|
||||||
# There should be no changes after the round trip
|
# There should be no changes after the round trip
|
||||||
@@ -122,6 +122,12 @@ class TestYamlProvider(TestCase):
|
|||||||
dyna = data.pop('a')
|
dyna = data.pop('a')
|
||||||
self.assertTrue('values' in dyna)
|
self.assertTrue('values' in dyna)
|
||||||
# self.assertTrue('dynamic' in dyna)
|
# self.assertTrue('dynamic' in dyna)
|
||||||
|
# TODO:
|
||||||
|
|
||||||
|
# make sure new dynamic records made the trip
|
||||||
|
dyna = data.pop('aaaa')
|
||||||
|
self.assertTrue('values' in dyna)
|
||||||
|
# self.assertTrue('dynamic' in dyna)
|
||||||
|
|
||||||
dyna = data.pop('cname')
|
dyna = data.pop('cname')
|
||||||
self.assertTrue('value' in dyna)
|
self.assertTrue('value' in dyna)
|
||||||
|
Reference in New Issue
Block a user