|
|
@ -11,9 +11,9 @@ from octodns.provider.azuredns import _AzureRecord, AzureProvider, \ |
|
|
from octodns.zone import Zone |
|
|
from octodns.zone import Zone |
|
|
from octodns.provider.base import Plan |
|
|
from octodns.provider.base import Plan |
|
|
|
|
|
|
|
|
from azure.mgmt.dns.models import ARecord, AaaaRecord, CnameRecord, MxRecord, \ |
|
|
|
|
|
SrvRecord, NsRecord, PtrRecord, TxtRecord, RecordSet, SoaRecord, \ |
|
|
|
|
|
Zone as AzureZone |
|
|
|
|
|
|
|
|
from azure.mgmt.dns.models import ARecord, AaaaRecord, CaaRecord, \ |
|
|
|
|
|
CnameRecord, MxRecord, SrvRecord, NsRecord, PtrRecord, TxtRecord, \ |
|
|
|
|
|
RecordSet, SoaRecord, Zone as AzureZone |
|
|
from msrestazure.azure_exceptions import CloudError |
|
|
from msrestazure.azure_exceptions import CloudError |
|
|
|
|
|
|
|
|
from unittest import TestCase |
|
|
from unittest import TestCase |
|
|
@ -38,6 +38,37 @@ octo_records.append(Record.new(zone, 'aaa', { |
|
|
'ttl': 2, |
|
|
'ttl': 2, |
|
|
'type': 'A', |
|
|
'type': 'A', |
|
|
'values': ['1.1.1.3']})) |
|
|
'values': ['1.1.1.3']})) |
|
|
|
|
|
octo_records.append(Record.new(zone, 'aaaa1', { |
|
|
|
|
|
'ttl': 300, |
|
|
|
|
|
'type': 'AAAA', |
|
|
|
|
|
'values': ['2601:644:500:e210:62f8:1dff:feb8:947a', |
|
|
|
|
|
'2601:642:500:e210:62f8:1dff:feb8:947a'], |
|
|
|
|
|
})) |
|
|
|
|
|
octo_records.append(Record.new(zone, 'aaaa2', { |
|
|
|
|
|
'ttl': 300, |
|
|
|
|
|
'type': 'AAAA', |
|
|
|
|
|
'value': '2601:644:500:e210:62f8:1dff:feb8:947a' |
|
|
|
|
|
})) |
|
|
|
|
|
octo_records.append(Record.new(zone, 'caa1', { |
|
|
|
|
|
'ttl': 9, |
|
|
|
|
|
'type': 'CAA', |
|
|
|
|
|
'value': { |
|
|
|
|
|
'flags': 0, |
|
|
|
|
|
'tag': 'issue', |
|
|
|
|
|
'value': 'ca.unit.tests', |
|
|
|
|
|
}})) |
|
|
|
|
|
octo_records.append(Record.new(zone, 'caa2', { |
|
|
|
|
|
'ttl': 9, |
|
|
|
|
|
'type': 'CAA', |
|
|
|
|
|
'values': [{ |
|
|
|
|
|
'flags': 0, |
|
|
|
|
|
'tag': 'issue', |
|
|
|
|
|
'value': 'ca1.unit.tests', |
|
|
|
|
|
}, { |
|
|
|
|
|
'flags': 0, |
|
|
|
|
|
'tag': 'issue', |
|
|
|
|
|
'value': 'ca2.unit.tests', |
|
|
|
|
|
}]})) |
|
|
octo_records.append(Record.new(zone, 'cname', { |
|
|
octo_records.append(Record.new(zone, 'cname', { |
|
|
'ttl': 3, |
|
|
'ttl': 3, |
|
|
'type': 'CNAME', |
|
|
'type': 'CNAME', |
|
|
@ -67,6 +98,10 @@ octo_records.append(Record.new(zone, 'foo', { |
|
|
'ttl': 5, |
|
|
'ttl': 5, |
|
|
'type': 'NS', |
|
|
'type': 'NS', |
|
|
'value': 'ns1.unit.tests.'})) |
|
|
'value': 'ns1.unit.tests.'})) |
|
|
|
|
|
octo_records.append(Record.new(zone, 'ptr1', { |
|
|
|
|
|
'ttl': 5, |
|
|
|
|
|
'type': 'PTR', |
|
|
|
|
|
'value': 'ptr1.unit.tests.'})) |
|
|
octo_records.append(Record.new(zone, '_srv._tcp', { |
|
|
octo_records.append(Record.new(zone, '_srv._tcp', { |
|
|
'ttl': 6, |
|
|
'ttl': 6, |
|
|
'type': 'SRV', |
|
|
'type': 'SRV', |
|
|
@ -105,7 +140,8 @@ _base0.zone_name = 'unit.tests' |
|
|
_base0.relative_record_set_name = '@' |
|
|
_base0.relative_record_set_name = '@' |
|
|
_base0.record_type = 'A' |
|
|
_base0.record_type = 'A' |
|
|
_base0.params['ttl'] = 0 |
|
|
_base0.params['ttl'] = 0 |
|
|
_base0.params['arecords'] = [ARecord('1.2.3.4'), ARecord('10.10.10.10')] |
|
|
|
|
|
|
|
|
_base0.params['arecords'] = [ARecord(ipv4_address='1.2.3.4'), |
|
|
|
|
|
ARecord(ipv4_address='10.10.10.10')] |
|
|
azure_records.append(_base0) |
|
|
azure_records.append(_base0) |
|
|
|
|
|
|
|
|
_base1 = _AzureRecord('TestAzure', octo_records[1]) |
|
|
_base1 = _AzureRecord('TestAzure', octo_records[1]) |
|
|
@ -113,7 +149,8 @@ _base1.zone_name = 'unit.tests' |
|
|
_base1.relative_record_set_name = 'a' |
|
|
_base1.relative_record_set_name = 'a' |
|
|
_base1.record_type = 'A' |
|
|
_base1.record_type = 'A' |
|
|
_base1.params['ttl'] = 1 |
|
|
_base1.params['ttl'] = 1 |
|
|
_base1.params['arecords'] = [ARecord('1.2.3.4'), ARecord('1.1.1.1')] |
|
|
|
|
|
|
|
|
_base1.params['arecords'] = [ARecord(ipv4_address='1.2.3.4'), |
|
|
|
|
|
ARecord(ipv4_address='1.1.1.1')] |
|
|
azure_records.append(_base1) |
|
|
azure_records.append(_base1) |
|
|
|
|
|
|
|
|
_base2 = _AzureRecord('TestAzure', octo_records[2]) |
|
|
_base2 = _AzureRecord('TestAzure', octo_records[2]) |
|
|
@ -121,7 +158,7 @@ _base2.zone_name = 'unit.tests' |
|
|
_base2.relative_record_set_name = 'aa' |
|
|
_base2.relative_record_set_name = 'aa' |
|
|
_base2.record_type = 'A' |
|
|
_base2.record_type = 'A' |
|
|
_base2.params['ttl'] = 9001 |
|
|
_base2.params['ttl'] = 9001 |
|
|
_base2.params['arecords'] = ARecord('1.2.4.3') |
|
|
|
|
|
|
|
|
_base2.params['arecords'] = ARecord(ipv4_address='1.2.4.3') |
|
|
azure_records.append(_base2) |
|
|
azure_records.append(_base2) |
|
|
|
|
|
|
|
|
_base3 = _AzureRecord('TestAzure', octo_records[3]) |
|
|
_base3 = _AzureRecord('TestAzure', octo_records[3]) |
|
|
@ -129,85 +166,146 @@ _base3.zone_name = 'unit.tests' |
|
|
_base3.relative_record_set_name = 'aaa' |
|
|
_base3.relative_record_set_name = 'aaa' |
|
|
_base3.record_type = 'A' |
|
|
_base3.record_type = 'A' |
|
|
_base3.params['ttl'] = 2 |
|
|
_base3.params['ttl'] = 2 |
|
|
_base3.params['arecords'] = ARecord('1.1.1.3') |
|
|
|
|
|
|
|
|
_base3.params['arecords'] = ARecord(ipv4_address='1.1.1.3') |
|
|
azure_records.append(_base3) |
|
|
azure_records.append(_base3) |
|
|
|
|
|
|
|
|
_base4 = _AzureRecord('TestAzure', octo_records[4]) |
|
|
_base4 = _AzureRecord('TestAzure', octo_records[4]) |
|
|
_base4.zone_name = 'unit.tests' |
|
|
_base4.zone_name = 'unit.tests' |
|
|
_base4.relative_record_set_name = 'cname' |
|
|
|
|
|
_base4.record_type = 'CNAME' |
|
|
|
|
|
_base4.params['ttl'] = 3 |
|
|
|
|
|
_base4.params['cname_record'] = CnameRecord('a.unit.tests.') |
|
|
|
|
|
|
|
|
_base4.relative_record_set_name = 'aaaa1' |
|
|
|
|
|
_base4.record_type = 'AAAA' |
|
|
|
|
|
_base4.params['ttl'] = 300 |
|
|
|
|
|
aaaa1 = AaaaRecord(ipv6_address='2601:644:500:e210:62f8:1dff:feb8:947a') |
|
|
|
|
|
aaaa2 = AaaaRecord(ipv6_address='2601:642:500:e210:62f8:1dff:feb8:947a') |
|
|
|
|
|
_base4.params['aaaa_records'] = [aaaa1, aaaa2] |
|
|
azure_records.append(_base4) |
|
|
azure_records.append(_base4) |
|
|
|
|
|
|
|
|
_base5 = _AzureRecord('TestAzure', octo_records[5]) |
|
|
_base5 = _AzureRecord('TestAzure', octo_records[5]) |
|
|
_base5.zone_name = 'unit.tests' |
|
|
_base5.zone_name = 'unit.tests' |
|
|
_base5.relative_record_set_name = 'mx1' |
|
|
|
|
|
_base5.record_type = 'MX' |
|
|
|
|
|
_base5.params['ttl'] = 3 |
|
|
|
|
|
_base5.params['mx_records'] = [MxRecord(10, 'mx1.unit.tests.'), |
|
|
|
|
|
MxRecord(20, 'mx2.unit.tests.')] |
|
|
|
|
|
|
|
|
_base5.relative_record_set_name = 'aaaa2' |
|
|
|
|
|
_base5.record_type = 'AAAA' |
|
|
|
|
|
_base5.params['ttl'] = 300 |
|
|
|
|
|
_base5.params['aaaa_records'] = [aaaa1] |
|
|
azure_records.append(_base5) |
|
|
azure_records.append(_base5) |
|
|
|
|
|
|
|
|
_base6 = _AzureRecord('TestAzure', octo_records[6]) |
|
|
_base6 = _AzureRecord('TestAzure', octo_records[6]) |
|
|
_base6.zone_name = 'unit.tests' |
|
|
_base6.zone_name = 'unit.tests' |
|
|
_base6.relative_record_set_name = 'mx2' |
|
|
|
|
|
_base6.record_type = 'MX' |
|
|
|
|
|
_base6.params['ttl'] = 3 |
|
|
|
|
|
_base6.params['mx_records'] = [MxRecord(10, 'mx1.unit.tests.')] |
|
|
|
|
|
|
|
|
_base6.relative_record_set_name = 'caa1' |
|
|
|
|
|
_base6.record_type = 'CAA' |
|
|
|
|
|
_base6.params['ttl'] = 9 |
|
|
|
|
|
_base6.params['caa_records'] = [CaaRecord(flags=0, |
|
|
|
|
|
tag='issue', |
|
|
|
|
|
value='ca.unit.tests')] |
|
|
azure_records.append(_base6) |
|
|
azure_records.append(_base6) |
|
|
|
|
|
|
|
|
_base7 = _AzureRecord('TestAzure', octo_records[7]) |
|
|
_base7 = _AzureRecord('TestAzure', octo_records[7]) |
|
|
_base7.zone_name = 'unit.tests' |
|
|
_base7.zone_name = 'unit.tests' |
|
|
_base7.relative_record_set_name = '@' |
|
|
|
|
|
_base7.record_type = 'NS' |
|
|
|
|
|
_base7.params['ttl'] = 4 |
|
|
|
|
|
_base7.params['ns_records'] = [NsRecord('ns1.unit.tests.'), |
|
|
|
|
|
NsRecord('ns2.unit.tests.')] |
|
|
|
|
|
|
|
|
_base7.relative_record_set_name = 'caa2' |
|
|
|
|
|
_base7.record_type = 'CAA' |
|
|
|
|
|
_base7.params['ttl'] = 9 |
|
|
|
|
|
_base7.params['caa_records'] = [CaaRecord(flags=0, |
|
|
|
|
|
tag='issue', |
|
|
|
|
|
value='ca1.unit.tests'), |
|
|
|
|
|
CaaRecord(flags=0, |
|
|
|
|
|
tag='issue', |
|
|
|
|
|
value='ca2.unit.tests')] |
|
|
azure_records.append(_base7) |
|
|
azure_records.append(_base7) |
|
|
|
|
|
|
|
|
_base8 = _AzureRecord('TestAzure', octo_records[8]) |
|
|
_base8 = _AzureRecord('TestAzure', octo_records[8]) |
|
|
_base8.zone_name = 'unit.tests' |
|
|
_base8.zone_name = 'unit.tests' |
|
|
_base8.relative_record_set_name = 'foo' |
|
|
|
|
|
_base8.record_type = 'NS' |
|
|
|
|
|
_base8.params['ttl'] = 5 |
|
|
|
|
|
_base8.params['ns_records'] = [NsRecord('ns1.unit.tests.')] |
|
|
|
|
|
|
|
|
_base8.relative_record_set_name = 'cname' |
|
|
|
|
|
_base8.record_type = 'CNAME' |
|
|
|
|
|
_base8.params['ttl'] = 3 |
|
|
|
|
|
_base8.params['cname_record'] = CnameRecord(cname='a.unit.tests.') |
|
|
azure_records.append(_base8) |
|
|
azure_records.append(_base8) |
|
|
|
|
|
|
|
|
_base9 = _AzureRecord('TestAzure', octo_records[9]) |
|
|
_base9 = _AzureRecord('TestAzure', octo_records[9]) |
|
|
_base9.zone_name = 'unit.tests' |
|
|
_base9.zone_name = 'unit.tests' |
|
|
_base9.relative_record_set_name = '_srv._tcp' |
|
|
|
|
|
_base9.record_type = 'SRV' |
|
|
|
|
|
_base9.params['ttl'] = 6 |
|
|
|
|
|
_base9.params['srv_records'] = [SrvRecord(10, 20, 30, 'foo-1.unit.tests.'), |
|
|
|
|
|
SrvRecord(12, 30, 30, 'foo-2.unit.tests.')] |
|
|
|
|
|
|
|
|
_base9.relative_record_set_name = 'mx1' |
|
|
|
|
|
_base9.record_type = 'MX' |
|
|
|
|
|
_base9.params['ttl'] = 3 |
|
|
|
|
|
_base9.params['mx_records'] = [MxRecord(preference=10, |
|
|
|
|
|
exchange='mx1.unit.tests.'), |
|
|
|
|
|
MxRecord(preference=20, |
|
|
|
|
|
exchange='mx2.unit.tests.')] |
|
|
azure_records.append(_base9) |
|
|
azure_records.append(_base9) |
|
|
|
|
|
|
|
|
_base10 = _AzureRecord('TestAzure', octo_records[10]) |
|
|
_base10 = _AzureRecord('TestAzure', octo_records[10]) |
|
|
_base10.zone_name = 'unit.tests' |
|
|
_base10.zone_name = 'unit.tests' |
|
|
_base10.relative_record_set_name = '_srv2._tcp' |
|
|
|
|
|
_base10.record_type = 'SRV' |
|
|
|
|
|
_base10.params['ttl'] = 7 |
|
|
|
|
|
_base10.params['srv_records'] = [SrvRecord(12, 17, 1, 'srvfoo.unit.tests.')] |
|
|
|
|
|
|
|
|
_base10.relative_record_set_name = 'mx2' |
|
|
|
|
|
_base10.record_type = 'MX' |
|
|
|
|
|
_base10.params['ttl'] = 3 |
|
|
|
|
|
_base10.params['mx_records'] = [MxRecord(preference=10, |
|
|
|
|
|
exchange='mx1.unit.tests.')] |
|
|
azure_records.append(_base10) |
|
|
azure_records.append(_base10) |
|
|
|
|
|
|
|
|
_base11 = _AzureRecord('TestAzure', octo_records[11]) |
|
|
_base11 = _AzureRecord('TestAzure', octo_records[11]) |
|
|
_base11.zone_name = 'unit.tests' |
|
|
_base11.zone_name = 'unit.tests' |
|
|
_base11.relative_record_set_name = 'txt1' |
|
|
|
|
|
_base11.record_type = 'TXT' |
|
|
|
|
|
_base11.params['ttl'] = 8 |
|
|
|
|
|
_base11.params['txt_records'] = [TxtRecord(['txt singleton test'])] |
|
|
|
|
|
|
|
|
_base11.relative_record_set_name = '@' |
|
|
|
|
|
_base11.record_type = 'NS' |
|
|
|
|
|
_base11.params['ttl'] = 4 |
|
|
|
|
|
_base11.params['ns_records'] = [NsRecord(nsdname='ns1.unit.tests.'), |
|
|
|
|
|
NsRecord(nsdname='ns2.unit.tests.')] |
|
|
azure_records.append(_base11) |
|
|
azure_records.append(_base11) |
|
|
|
|
|
|
|
|
_base12 = _AzureRecord('TestAzure', octo_records[12]) |
|
|
_base12 = _AzureRecord('TestAzure', octo_records[12]) |
|
|
_base12.zone_name = 'unit.tests' |
|
|
_base12.zone_name = 'unit.tests' |
|
|
_base12.relative_record_set_name = 'txt2' |
|
|
|
|
|
_base12.record_type = 'TXT' |
|
|
|
|
|
_base12.params['ttl'] = 9 |
|
|
|
|
|
_base12.params['txt_records'] = [TxtRecord(['txt multiple test']), |
|
|
|
|
|
TxtRecord(['txt multiple test 2'])] |
|
|
|
|
|
|
|
|
_base12.relative_record_set_name = 'foo' |
|
|
|
|
|
_base12.record_type = 'NS' |
|
|
|
|
|
_base12.params['ttl'] = 5 |
|
|
|
|
|
_base12.params['ns_records'] = [NsRecord(nsdname='ns1.unit.tests.')] |
|
|
azure_records.append(_base12) |
|
|
azure_records.append(_base12) |
|
|
|
|
|
|
|
|
|
|
|
_base13 = _AzureRecord('TestAzure', octo_records[13]) |
|
|
|
|
|
_base13.zone_name = 'unit.tests' |
|
|
|
|
|
_base13.relative_record_set_name = 'ptr1' |
|
|
|
|
|
_base13.record_type = 'PTR' |
|
|
|
|
|
_base13.params['ttl'] = 5 |
|
|
|
|
|
_base13.params['ptr_records'] = [PtrRecord(ptrdname='ptr1.unit.tests.')] |
|
|
|
|
|
azure_records.append(_base13) |
|
|
|
|
|
|
|
|
|
|
|
_base14 = _AzureRecord('TestAzure', octo_records[14]) |
|
|
|
|
|
_base14.zone_name = 'unit.tests' |
|
|
|
|
|
_base14.relative_record_set_name = '_srv._tcp' |
|
|
|
|
|
_base14.record_type = 'SRV' |
|
|
|
|
|
_base14.params['ttl'] = 6 |
|
|
|
|
|
_base14.params['srv_records'] = [SrvRecord(priority=10, |
|
|
|
|
|
weight=20, |
|
|
|
|
|
port=30, |
|
|
|
|
|
target='foo-1.unit.tests.'), |
|
|
|
|
|
SrvRecord(priority=12, |
|
|
|
|
|
weight=30, |
|
|
|
|
|
port=30, |
|
|
|
|
|
target='foo-2.unit.tests.')] |
|
|
|
|
|
azure_records.append(_base14) |
|
|
|
|
|
|
|
|
|
|
|
_base15 = _AzureRecord('TestAzure', octo_records[15]) |
|
|
|
|
|
_base15.zone_name = 'unit.tests' |
|
|
|
|
|
_base15.relative_record_set_name = '_srv2._tcp' |
|
|
|
|
|
_base15.record_type = 'SRV' |
|
|
|
|
|
_base15.params['ttl'] = 7 |
|
|
|
|
|
_base15.params['srv_records'] = [SrvRecord(priority=12, |
|
|
|
|
|
weight=17, |
|
|
|
|
|
port=1, |
|
|
|
|
|
target='srvfoo.unit.tests.')] |
|
|
|
|
|
azure_records.append(_base15) |
|
|
|
|
|
|
|
|
|
|
|
_base16 = _AzureRecord('TestAzure', octo_records[16]) |
|
|
|
|
|
_base16.zone_name = 'unit.tests' |
|
|
|
|
|
_base16.relative_record_set_name = 'txt1' |
|
|
|
|
|
_base16.record_type = 'TXT' |
|
|
|
|
|
_base16.params['ttl'] = 8 |
|
|
|
|
|
_base16.params['txt_records'] = [TxtRecord(value=['txt singleton test'])] |
|
|
|
|
|
azure_records.append(_base16) |
|
|
|
|
|
|
|
|
|
|
|
_base17 = _AzureRecord('TestAzure', octo_records[17]) |
|
|
|
|
|
_base17.zone_name = 'unit.tests' |
|
|
|
|
|
_base17.relative_record_set_name = 'txt2' |
|
|
|
|
|
_base17.record_type = 'TXT' |
|
|
|
|
|
_base17.params['ttl'] = 9 |
|
|
|
|
|
_base17.params['txt_records'] = [TxtRecord(value=['txt multiple test']), |
|
|
|
|
|
TxtRecord(value=['txt multiple test 2'])] |
|
|
|
|
|
azure_records.append(_base17) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Test_AzureRecord(TestCase): |
|
|
class Test_AzureRecord(TestCase): |
|
|
def test_azure_record(self): |
|
|
def test_azure_record(self): |
|
|
@ -258,62 +356,91 @@ class TestAzureDnsProvider(TestCase): |
|
|
provider = self._get_provider() |
|
|
provider = self._get_provider() |
|
|
|
|
|
|
|
|
rs = [] |
|
|
rs = [] |
|
|
recordSet = RecordSet(arecords=[ARecord('1.1.1.1')]) |
|
|
|
|
|
|
|
|
recordSet = RecordSet(arecords=[ARecord(ipv4_address='1.1.1.1')]) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a1', 0, 'A' |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a1', 0, 'A' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(arecords=[ARecord('1.1.1.1'), |
|
|
|
|
|
ARecord('2.2.2.2')]) |
|
|
|
|
|
|
|
|
recordSet = RecordSet(arecords=[ARecord(ipv4_address='1.1.1.1'), |
|
|
|
|
|
ARecord(ipv4_address='2.2.2.2')]) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a2', 1, 'A' |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a2', 1, 'A' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(aaaa_records=[AaaaRecord('1:1ec:1::1')]) |
|
|
|
|
|
|
|
|
aaaa1 = AaaaRecord(ipv6_address='1:1ec:1::1') |
|
|
|
|
|
recordSet = RecordSet(aaaa_records=[aaaa1]) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'aaaa1', 2, 'AAAA' |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'aaaa1', 2, 'AAAA' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(aaaa_records=[AaaaRecord('1:1ec:1::1'), |
|
|
|
|
|
AaaaRecord('1:1ec:1::2')]) |
|
|
|
|
|
|
|
|
aaaa2 = AaaaRecord(ipv6_address='1:1ec:1::2') |
|
|
|
|
|
recordSet = RecordSet(aaaa_records=[aaaa1, |
|
|
|
|
|
aaaa2]) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'aaaa2', 3, 'AAAA' |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'aaaa2', 3, 'AAAA' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(cname_record=CnameRecord('cname.unit.test.')) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'cname1', 4, 'CNAME' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(caa_records=[CaaRecord(flags=0, |
|
|
|
|
|
tag='issue', |
|
|
|
|
|
value='caa1.unit.tests')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'caa1', 4, 'CAA' |
|
|
|
|
|
rs.append(recordSet) |
|
|
|
|
|
recordSet = RecordSet(caa_records=[CaaRecord(flags=0, |
|
|
|
|
|
tag='issue', |
|
|
|
|
|
value='caa1.unit.tests'), |
|
|
|
|
|
CaaRecord(flags=0, |
|
|
|
|
|
tag='issue', |
|
|
|
|
|
value='caa2.unit.tests')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'caa2', 4, 'CAA' |
|
|
|
|
|
rs.append(recordSet) |
|
|
|
|
|
cname1 = CnameRecord(cname='cname.unit.test.') |
|
|
|
|
|
recordSet = RecordSet(cname_record=cname1) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'cname1', 5, 'CNAME' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(cname_record=None) |
|
|
recordSet = RecordSet(cname_record=None) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'cname2', 5, 'CNAME' |
|
|
|
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'cname2', 6, 'CNAME' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(mx_records=[MxRecord(10, 'mx1.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'mx1', 6, 'MX' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(mx_records=[MxRecord(preference=10, |
|
|
|
|
|
exchange='mx1.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'mx1', 7, 'MX' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(mx_records=[MxRecord(10, 'mx1.unit.test.'), |
|
|
|
|
|
MxRecord(11, 'mx2.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'mx2', 7, 'MX' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(mx_records=[MxRecord(preference=10, |
|
|
|
|
|
exchange='mx1.unit.test.'), |
|
|
|
|
|
MxRecord(preference=11, |
|
|
|
|
|
exchange='mx2.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'mx2', 8, 'MX' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(ns_records=[NsRecord('ns1.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ns1', 8, 'NS' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(ns_records=[NsRecord(nsdname='ns1.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ns1', 9, 'NS' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(ns_records=[NsRecord('ns1.unit.test.'), |
|
|
|
|
|
NsRecord('ns2.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ns2', 9, 'NS' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(ns_records=[NsRecord(nsdname='ns1.unit.test.'), |
|
|
|
|
|
NsRecord(nsdname='ns2.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ns2', 10, 'NS' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(ptr_records=[PtrRecord('ptr1.unit.test.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ptr1', 10, 'PTR' |
|
|
|
|
|
|
|
|
ptr1 = PtrRecord(ptrdname='ptr1.unit.test.') |
|
|
|
|
|
recordSet = RecordSet(ptr_records=[ptr1]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ptr1', 11, 'PTR' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(ptr_records=[PtrRecord(None)]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ptr2', 11, 'PTR' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(ptr_records=[PtrRecord(ptrdname=None)]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'ptr2', 12, 'PTR' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(srv_records=[SrvRecord(1, 2, 3, '1unit.tests.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = '_srv1._tcp', 12, 'SRV' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(srv_records=[SrvRecord(priority=1, |
|
|
|
|
|
weight=2, |
|
|
|
|
|
port=3, |
|
|
|
|
|
target='1unit.tests.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = '_srv1._tcp', 13, 'SRV' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(srv_records=[SrvRecord(1, 2, 3, '1unit.tests.'), |
|
|
|
|
|
SrvRecord(4, 5, 6, '2unit.tests.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = '_srv2._tcp', 13, 'SRV' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(srv_records=[SrvRecord(priority=1, |
|
|
|
|
|
weight=2, |
|
|
|
|
|
port=3, |
|
|
|
|
|
target='1unit.tests.'), |
|
|
|
|
|
SrvRecord(priority=4, |
|
|
|
|
|
weight=5, |
|
|
|
|
|
port=6, |
|
|
|
|
|
target='2unit.tests.')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = '_srv2._tcp', 14, 'SRV' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(txt_records=[TxtRecord('sample text1')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'txt1', 14, 'TXT' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(txt_records=[TxtRecord(value='sample text1')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'txt1', 15, 'TXT' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(txt_records=[TxtRecord('sample text1'), |
|
|
|
|
|
TxtRecord('sample text2')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'txt2', 15, 'TXT' |
|
|
|
|
|
|
|
|
recordSet = RecordSet(txt_records=[TxtRecord(value='sample text1'), |
|
|
|
|
|
TxtRecord(value='sample text2')]) |
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'txt2', 16, 'TXT' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(soa_record=[SoaRecord()]) |
|
|
recordSet = RecordSet(soa_record=[SoaRecord()]) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = '', 16, 'SOA' |
|
|
|
|
|
|
|
|
recordSet.name, recordSet.ttl, recordSet.type = '', 17, 'SOA' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
|
|
|
|
|
|
record_list = provider._dns_client.record_sets.list_by_dns_zone |
|
|
record_list = provider._dns_client.record_sets.list_by_dns_zone |
|
|
@ -322,7 +449,7 @@ class TestAzureDnsProvider(TestCase): |
|
|
exists = provider.populate(zone) |
|
|
exists = provider.populate(zone) |
|
|
self.assertTrue(exists) |
|
|
self.assertTrue(exists) |
|
|
|
|
|
|
|
|
self.assertEquals(len(zone.records), 16) |
|
|
|
|
|
|
|
|
self.assertEquals(len(zone.records), 18) |
|
|
|
|
|
|
|
|
def test_populate_zone(self): |
|
|
def test_populate_zone(self): |
|
|
provider = self._get_provider() |
|
|
provider = self._get_provider() |
|
|
@ -356,9 +483,9 @@ class TestAzureDnsProvider(TestCase): |
|
|
changes.append(Create(i)) |
|
|
changes.append(Create(i)) |
|
|
deletes.append(Delete(i)) |
|
|
deletes.append(Delete(i)) |
|
|
|
|
|
|
|
|
self.assertEquals(13, provider.apply(Plan(None, zone, |
|
|
|
|
|
|
|
|
self.assertEquals(18, provider.apply(Plan(None, zone, |
|
|
changes, True))) |
|
|
changes, True))) |
|
|
self.assertEquals(13, provider.apply(Plan(zone, zone, |
|
|
|
|
|
|
|
|
self.assertEquals(18, provider.apply(Plan(zone, zone, |
|
|
deletes, True))) |
|
|
deletes, True))) |
|
|
|
|
|
|
|
|
def test_create_zone(self): |
|
|
def test_create_zone(self): |
|
|
@ -374,18 +501,18 @@ class TestAzureDnsProvider(TestCase): |
|
|
_get = provider._dns_client.zones.get |
|
|
_get = provider._dns_client.zones.get |
|
|
_get.side_effect = CloudError(Mock(status=404), err_msg) |
|
|
_get.side_effect = CloudError(Mock(status=404), err_msg) |
|
|
|
|
|
|
|
|
self.assertEquals(13, provider.apply(Plan(None, desired, changes, |
|
|
|
|
|
|
|
|
self.assertEquals(18, provider.apply(Plan(None, desired, changes, |
|
|
True))) |
|
|
True))) |
|
|
|
|
|
|
|
|
def test_check_zone_no_create(self): |
|
|
def test_check_zone_no_create(self): |
|
|
provider = self._get_provider() |
|
|
provider = self._get_provider() |
|
|
|
|
|
|
|
|
rs = [] |
|
|
rs = [] |
|
|
recordSet = RecordSet(arecords=[ARecord('1.1.1.1')]) |
|
|
|
|
|
|
|
|
recordSet = RecordSet(arecords=[ARecord(ipv4_address='1.1.1.1')]) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a1', 0, 'A' |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a1', 0, 'A' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
recordSet = RecordSet(arecords=[ARecord('1.1.1.1'), |
|
|
|
|
|
ARecord('2.2.2.2')]) |
|
|
|
|
|
|
|
|
recordSet = RecordSet(arecords=[ARecord(ipv4_address='1.1.1.1'), |
|
|
|
|
|
ARecord(ipv4_address='2.2.2.2')]) |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a2', 1, 'A' |
|
|
recordSet.name, recordSet.ttl, recordSet.type = 'a2', 1, 'A' |
|
|
rs.append(recordSet) |
|
|
rs.append(recordSet) |
|
|
|
|
|
|
|
|
|