mirror of
				https://github.com/github/octodns.git
				synced 2024-05-11 05:55:00 +00:00 
			
		
		
		
	Merge pull request #306 from yzguy/dnsmadeeasy_aname
add ANAME support to DnsMadeEasy (ALIAS == ANAME)
This commit is contained in:
		@@ -152,7 +152,7 @@ The above command pulled the existing data out of Route53 and placed the results
 | 
			
		||||
| [AzureProvider](/octodns/provider/azuredns.py) | azure-mgmt-dns | A, AAAA, CNAME, MX, NS, PTR, SRV, TXT | No | |
 | 
			
		||||
| [CloudflareProvider](/octodns/provider/cloudflare.py) | | A, AAAA, ALIAS, CAA, CNAME, MX, NS, SPF, SRV, TXT | No | CAA tags restricted |
 | 
			
		||||
| [DigitalOceanProvider](/octodns/provider/digitalocean.py) | | A, AAAA, CAA, CNAME, MX, NS, TXT, SRV | No | CAA tags restricted |
 | 
			
		||||
| [DnsMadeEasyProvider](/octodns/provider/dnsmadeeasy.py) | | A, AAAA, CAA, CNAME, MX, NS, PTR, SPF, SRV, TXT | No | CAA tags restricted |
 | 
			
		||||
| [DnsMadeEasyProvider](/octodns/provider/dnsmadeeasy.py) | | A, AAAA, ALIAS (ANAME), CAA, CNAME, MX, NS, PTR, SPF, SRV, TXT | No | CAA tags restricted |
 | 
			
		||||
| [DnsimpleProvider](/octodns/provider/dnsimple.py) | | All | No | CAA tags restricted |
 | 
			
		||||
| [DynProvider](/octodns/provider/dyn.py) | dyn | All | Yes | |
 | 
			
		||||
| [EtcHostsProvider](/octodns/provider/etc_hosts.py) | | A, AAAA, ALIAS, CNAME | No | |
 | 
			
		||||
 
 | 
			
		||||
@@ -112,10 +112,14 @@ class DnsMadeEasyClient(object):
 | 
			
		||||
        resp = self._request('GET', path).json()
 | 
			
		||||
        ret += resp['data']
 | 
			
		||||
 | 
			
		||||
        # change relative values to absolute
 | 
			
		||||
        for record in ret:
 | 
			
		||||
            # change ANAME records to ALIAS
 | 
			
		||||
            if record['type'] == 'ANAME':
 | 
			
		||||
                record['type'] = 'ALIAS'
 | 
			
		||||
 | 
			
		||||
            # change relative values to absolute
 | 
			
		||||
            value = record['value']
 | 
			
		||||
            if record['type'] in ['CNAME', 'MX', 'NS', 'SRV']:
 | 
			
		||||
            if record['type'] in ['ALIAS', 'CNAME', 'MX', 'NS', 'SRV']:
 | 
			
		||||
                if value == '':
 | 
			
		||||
                    record['value'] = zone_name
 | 
			
		||||
                elif not value.endswith('.'):
 | 
			
		||||
@@ -127,6 +131,10 @@ class DnsMadeEasyClient(object):
 | 
			
		||||
        zone_id = self.domains.get(zone_name, False)
 | 
			
		||||
        path = '/{}/records'.format(zone_id)
 | 
			
		||||
 | 
			
		||||
        # change ALIAS records to ANAME
 | 
			
		||||
        if params['type'] == 'ALIAS':
 | 
			
		||||
            params['type'] = 'ANAME'
 | 
			
		||||
 | 
			
		||||
        self._request('POST', path, data=params)
 | 
			
		||||
 | 
			
		||||
    def record_delete(self, zone_name, record_id):
 | 
			
		||||
@@ -150,7 +158,7 @@ class DnsMadeEasyProvider(BaseProvider):
 | 
			
		||||
        sandbox: true
 | 
			
		||||
    '''
 | 
			
		||||
    SUPPORTS_GEO = False
 | 
			
		||||
    SUPPORTS = set(('A', 'AAAA', 'CAA', 'CNAME', 'MX',
 | 
			
		||||
    SUPPORTS = set(('A', 'AAAA', 'ALIAS', 'CAA', 'CNAME', 'MX',
 | 
			
		||||
                    'NS', 'PTR', 'SPF', 'SRV', 'TXT'))
 | 
			
		||||
 | 
			
		||||
    def __init__(self, id, api_key, secret_key, sandbox=False,
 | 
			
		||||
@@ -222,6 +230,7 @@ class DnsMadeEasyProvider(BaseProvider):
 | 
			
		||||
 | 
			
		||||
    _data_for_CNAME = _data_for_single
 | 
			
		||||
    _data_for_PTR = _data_for_single
 | 
			
		||||
    _data_for_ALIAS = _data_for_single
 | 
			
		||||
 | 
			
		||||
    def _data_for_SRV(self, _type, records):
 | 
			
		||||
        values = []
 | 
			
		||||
@@ -297,6 +306,7 @@ class DnsMadeEasyProvider(BaseProvider):
 | 
			
		||||
 | 
			
		||||
    _params_for_CNAME = _params_for_single
 | 
			
		||||
    _params_for_PTR = _params_for_single
 | 
			
		||||
    _params_for_ALIAS = _params_for_single
 | 
			
		||||
 | 
			
		||||
    def _params_for_MX(self, record):
 | 
			
		||||
        for value in record.values:
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										646
									
								
								tests/fixtures/dnsmadeeasy-records.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										646
									
								
								tests/fixtures/dnsmadeeasy-records.json
									
									
									
									
										vendored
									
									
								
							@@ -1,312 +1,340 @@
 | 
			
		||||
{
 | 
			
		||||
	"totalPages": 1,
 | 
			
		||||
	"totalRecords": 21,
 | 
			
		||||
	"data": [{
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"caaType": "issue",
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"issuerCritical": 0,
 | 
			
		||||
		"ttl": 3600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "",
 | 
			
		||||
		"value": "\"ca.unit.tests\"",
 | 
			
		||||
		"id": 11189874,
 | 
			
		||||
		"type": "CAA"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "",
 | 
			
		||||
		"value": "1.2.3.4",
 | 
			
		||||
		"id": 11189875,
 | 
			
		||||
		"type": "A"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "",
 | 
			
		||||
		"value": "1.2.3.5",
 | 
			
		||||
		"id": 11189876,
 | 
			
		||||
		"type": "A"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 600,
 | 
			
		||||
		"weight": 20,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "_srv._tcp",
 | 
			
		||||
		"value": "foo-1.unit.tests.",
 | 
			
		||||
		"id": 11189877,
 | 
			
		||||
		"priority": 10,
 | 
			
		||||
		"type": "SRV",
 | 
			
		||||
		"port": 30
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 600,
 | 
			
		||||
		"weight": 20,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "_srv._tcp",
 | 
			
		||||
		"value": "foo-2.unit.tests.",
 | 
			
		||||
		"id": 11189878,
 | 
			
		||||
		"priority": 12,
 | 
			
		||||
		"type": "SRV",
 | 
			
		||||
		"port": 30
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "aaaa",
 | 
			
		||||
		"value": "2601:644:500:e210:62f8:1dff:feb8:947a",
 | 
			
		||||
		"id": 11189879,
 | 
			
		||||
		"type": "AAAA"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "cname",
 | 
			
		||||
		"value": "",
 | 
			
		||||
		"id": 11189880,
 | 
			
		||||
		"type": "CNAME"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 3600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "included",
 | 
			
		||||
		"value": "",
 | 
			
		||||
		"id": 11189881,
 | 
			
		||||
		"type": "CNAME"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"mxLevel": 30,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "mx",
 | 
			
		||||
		"value": "smtp-3.unit.tests.",
 | 
			
		||||
		"id": 11189882,
 | 
			
		||||
		"type": "MX"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"mxLevel": 20,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "mx",
 | 
			
		||||
		"value": "smtp-2.unit.tests.",
 | 
			
		||||
		"id": 11189883,
 | 
			
		||||
		"type": "MX"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"mxLevel": 10,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "mx",
 | 
			
		||||
		"value": "smtp-4.unit.tests.",
 | 
			
		||||
		"id": 11189884,
 | 
			
		||||
		"type": "MX"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"mxLevel": 40,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "mx",
 | 
			
		||||
		"value": "smtp-1.unit.tests.",
 | 
			
		||||
		"id": 11189885,
 | 
			
		||||
		"type": "MX"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "spf",
 | 
			
		||||
		"value": "\"v=spf1 ip4:192.168.0.1/16-all\"",
 | 
			
		||||
		"id": 11189886,
 | 
			
		||||
		"type": "SPF"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "txt",
 | 
			
		||||
		"value": "\"Bah bah black sheep\"",
 | 
			
		||||
		"id": 11189887,
 | 
			
		||||
		"type": "TXT"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "txt",
 | 
			
		||||
		"value": "\"have you any wool.\"",
 | 
			
		||||
		"id": 11189888,
 | 
			
		||||
		"type": "TXT"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "txt",
 | 
			
		||||
		"value": "\"v=DKIM1;k=rsa;s=email;h=sha256;p=A/kinda+of/long/string+with+numb3rs\"",
 | 
			
		||||
		"id": 11189889,
 | 
			
		||||
		"type": "TXT"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 3600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "under",
 | 
			
		||||
		"value": "ns1.unit.tests.",
 | 
			
		||||
		"id": 11189890,
 | 
			
		||||
		"type": "NS"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 3600,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "under",
 | 
			
		||||
		"value": "ns2",
 | 
			
		||||
		"id": 11189891,
 | 
			
		||||
		"type": "NS"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "www",
 | 
			
		||||
		"value": "2.2.3.6",
 | 
			
		||||
		"id": 11189892,
 | 
			
		||||
		"type": "A"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "www.sub",
 | 
			
		||||
		"value": "2.2.3.6",
 | 
			
		||||
		"id": 11189893,
 | 
			
		||||
		"type": "A"
 | 
			
		||||
	}, {
 | 
			
		||||
		"failover": false,
 | 
			
		||||
		"monitor": false,
 | 
			
		||||
		"sourceId": 123123,
 | 
			
		||||
		"dynamicDns": false,
 | 
			
		||||
		"failed": false,
 | 
			
		||||
		"gtdLocation": "DEFAULT",
 | 
			
		||||
		"hardLink": false,
 | 
			
		||||
		"ttl": 300,
 | 
			
		||||
		"source": 1,
 | 
			
		||||
		"name": "ptr",
 | 
			
		||||
		"value": "foo.bar.com.",
 | 
			
		||||
		"id": 11189894,
 | 
			
		||||
		"type": "PTR"
 | 
			
		||||
  "totalPages": 1,
 | 
			
		||||
  "totalRecords": 23,
 | 
			
		||||
  "data": [{
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "caaType": "issue",
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "issuerCritical": 0,
 | 
			
		||||
    "ttl": 3600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "",
 | 
			
		||||
    "value": "\"ca.unit.tests\"",
 | 
			
		||||
    "id": 11189874,
 | 
			
		||||
    "type": "CAA"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "",
 | 
			
		||||
    "value": "1.2.3.4",
 | 
			
		||||
    "id": 11189875,
 | 
			
		||||
    "type": "A"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "",
 | 
			
		||||
    "value": "1.2.3.5",
 | 
			
		||||
    "id": 11189876,
 | 
			
		||||
    "type": "A"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 600,
 | 
			
		||||
    "weight": 20,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "_srv._tcp",
 | 
			
		||||
    "value": "foo-1.unit.tests.",
 | 
			
		||||
    "id": 11189877,
 | 
			
		||||
    "priority": 10,
 | 
			
		||||
    "type": "SRV",
 | 
			
		||||
    "port": 30
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 600,
 | 
			
		||||
    "weight": 20,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "_srv._tcp",
 | 
			
		||||
    "value": "foo-2.unit.tests.",
 | 
			
		||||
    "id": 11189878,
 | 
			
		||||
    "priority": 12,
 | 
			
		||||
    "type": "SRV",
 | 
			
		||||
    "port": 30
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "aaaa",
 | 
			
		||||
    "value": "2601:644:500:e210:62f8:1dff:feb8:947a",
 | 
			
		||||
    "id": 11189879,
 | 
			
		||||
    "type": "AAAA"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "cname",
 | 
			
		||||
    "value": "",
 | 
			
		||||
    "id": 11189880,
 | 
			
		||||
    "type": "CNAME"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 3600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "included",
 | 
			
		||||
    "value": "",
 | 
			
		||||
    "id": 11189881,
 | 
			
		||||
    "type": "CNAME"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "mxLevel": 30,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "mx",
 | 
			
		||||
    "value": "smtp-3.unit.tests.",
 | 
			
		||||
    "id": 11189882,
 | 
			
		||||
    "type": "MX"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "mxLevel": 20,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "mx",
 | 
			
		||||
    "value": "smtp-2.unit.tests.",
 | 
			
		||||
    "id": 11189883,
 | 
			
		||||
    "type": "MX"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "mxLevel": 10,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "mx",
 | 
			
		||||
    "value": "smtp-4.unit.tests.",
 | 
			
		||||
    "id": 11189884,
 | 
			
		||||
    "type": "MX"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "mxLevel": 40,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "mx",
 | 
			
		||||
    "value": "smtp-1.unit.tests.",
 | 
			
		||||
    "id": 11189885,
 | 
			
		||||
    "type": "MX"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "spf",
 | 
			
		||||
    "value": "\"v=spf1 ip4:192.168.0.1/16-all\"",
 | 
			
		||||
    "id": 11189886,
 | 
			
		||||
    "type": "SPF"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "txt",
 | 
			
		||||
    "value": "\"Bah bah black sheep\"",
 | 
			
		||||
    "id": 11189887,
 | 
			
		||||
    "type": "TXT"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "txt",
 | 
			
		||||
    "value": "\"have you any wool.\"",
 | 
			
		||||
    "id": 11189888,
 | 
			
		||||
    "type": "TXT"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "txt",
 | 
			
		||||
    "value": "\"v=DKIM1;k=rsa;s=email;h=sha256;p=A/kinda+of/long/string+with+numb3rs\"",
 | 
			
		||||
    "id": 11189889,
 | 
			
		||||
    "type": "TXT"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 3600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "under",
 | 
			
		||||
    "value": "ns1.unit.tests.",
 | 
			
		||||
    "id": 11189890,
 | 
			
		||||
    "type": "NS"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 3600,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "under",
 | 
			
		||||
    "value": "ns2",
 | 
			
		||||
    "id": 11189891,
 | 
			
		||||
    "type": "NS"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "www",
 | 
			
		||||
    "value": "2.2.3.6",
 | 
			
		||||
    "id": 11189892,
 | 
			
		||||
    "type": "A"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "www.sub",
 | 
			
		||||
    "value": "2.2.3.6",
 | 
			
		||||
    "id": 11189893,
 | 
			
		||||
    "type": "A"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 300,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "ptr",
 | 
			
		||||
    "value": "foo.bar.com.",
 | 
			
		||||
    "id": 11189894,
 | 
			
		||||
    "type": "PTR"
 | 
			
		||||
  }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 1800,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "",
 | 
			
		||||
    "value": "aname.unit.tests.",
 | 
			
		||||
    "id": 11189895,
 | 
			
		||||
    "type": "ANAME"
 | 
			
		||||
	 }, {
 | 
			
		||||
    "failover": false,
 | 
			
		||||
    "monitor": false,
 | 
			
		||||
    "sourceId": 123123,
 | 
			
		||||
    "dynamicDns": false,
 | 
			
		||||
    "failed": false,
 | 
			
		||||
    "gtdLocation": "DEFAULT",
 | 
			
		||||
    "hardLink": false,
 | 
			
		||||
    "ttl": 1800,
 | 
			
		||||
    "source": 1,
 | 
			
		||||
    "name": "sub",
 | 
			
		||||
    "value": "aname",
 | 
			
		||||
    "id": 11189896,
 | 
			
		||||
    "type": "ANAME"
 | 
			
		||||
	}],
 | 
			
		||||
	"page": 0
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -35,6 +35,20 @@ class TestDnsMadeEasyProvider(TestCase):
 | 
			
		||||
            'ns2.unit.tests.',
 | 
			
		||||
        ]
 | 
			
		||||
    }))
 | 
			
		||||
 | 
			
		||||
    # Add some ALIAS records
 | 
			
		||||
    expected.add_record(Record.new(expected, '', {
 | 
			
		||||
        'ttl': 1800,
 | 
			
		||||
        'type': 'ALIAS',
 | 
			
		||||
        'value': 'aname.unit.tests.'
 | 
			
		||||
    }))
 | 
			
		||||
 | 
			
		||||
    expected.add_record(Record.new(expected, 'sub', {
 | 
			
		||||
        'ttl': 1800,
 | 
			
		||||
        'type': 'ALIAS',
 | 
			
		||||
        'value': 'aname.unit.tests.'
 | 
			
		||||
    }))
 | 
			
		||||
 | 
			
		||||
    for record in list(expected.records):
 | 
			
		||||
        if record.name == 'sub' and record._type == 'NS':
 | 
			
		||||
            expected._remove_record(record)
 | 
			
		||||
@@ -93,14 +107,14 @@ class TestDnsMadeEasyProvider(TestCase):
 | 
			
		||||
 | 
			
		||||
                zone = Zone('unit.tests.', [])
 | 
			
		||||
                provider.populate(zone)
 | 
			
		||||
                self.assertEquals(13, len(zone.records))
 | 
			
		||||
                self.assertEquals(15, len(zone.records))
 | 
			
		||||
                changes = self.expected.changes(zone, provider)
 | 
			
		||||
                self.assertEquals(0, len(changes))
 | 
			
		||||
 | 
			
		||||
        # 2nd populate makes no network calls/all from cache
 | 
			
		||||
        again = Zone('unit.tests.', [])
 | 
			
		||||
        provider.populate(again)
 | 
			
		||||
        self.assertEquals(13, len(again.records))
 | 
			
		||||
        self.assertEquals(15, len(again.records))
 | 
			
		||||
 | 
			
		||||
        # bust the cache
 | 
			
		||||
        del provider._zone_records[zone.name]
 | 
			
		||||
@@ -145,7 +159,7 @@ class TestDnsMadeEasyProvider(TestCase):
 | 
			
		||||
                'port': 30
 | 
			
		||||
            }),
 | 
			
		||||
        ])
 | 
			
		||||
        self.assertEquals(25, provider._client._request.call_count)
 | 
			
		||||
        self.assertEquals(27, provider._client._request.call_count)
 | 
			
		||||
 | 
			
		||||
        provider._client._request.reset_mock()
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user