本文整理汇总了Python中SoftLayer.DNSManager._get_zone_id_from_name方法的典型用法代码示例。如果您正苦于以下问题:Python DNSManager._get_zone_id_from_name方法的具体用法?Python DNSManager._get_zone_id_from_name怎么用?Python DNSManager._get_zone_id_from_name使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SoftLayer.DNSManager
的用法示例。
在下文中一共展示了DNSManager._get_zone_id_from_name方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: on_delete
# 需要导入模块: from SoftLayer import DNSManager [as 别名]
# 或者: from SoftLayer.DNSManager import _get_zone_id_from_name [as 别名]
def on_delete(self, req, resp, tenant_id, domain, entry):
client = req.env['sl_client']
mgr = DNSManager(client)
domain = unquote_plus(domain)
zone_id = mgr._get_zone_id_from_name(domain)[0]
record = mgr.get_records(zone_id, host=entry)[0]
mgr.delete_record(record['id'])
resp.status = 204
示例2: on_get
# 需要导入模块: from SoftLayer import DNSManager [as 别名]
# 或者: from SoftLayer.DNSManager import _get_zone_id_from_name [as 别名]
def on_get(self, req, resp, tenant_id, domain, entry=None):
client = req.env['sl_client']
mgr = DNSManager(client)
domain = unquote_plus(domain)
zone_id = mgr._get_zone_id_from_name(domain)[0]
if entry:
record = mgr.get_records(zone_id, host=entry)[0]
result = get_dns_entry_dict(domain, record['host'], record['data'],
record['type'], entry_id=record['id'])
resp.body = {'dns_entry': result}
示例3: on_put
# 需要导入模块: from SoftLayer import DNSManager [as 别名]
# 或者: from SoftLayer.DNSManager import _get_zone_id_from_name [as 别名]
def on_put(self, req, resp, tenant_id, domain, entry):
client = req.env['sl_client']
mgr = DNSManager(client)
body = json.loads(req.stream.read().decode())
ip = lookup(body, 'dns_entry', 'ip')
record_type = lookup(body, 'dns_entry', 'type')
if not record_type:
record_type = 'A'
domain = unquote_plus(domain)
zone_id = mgr._get_zone_id_from_name(domain)[0]
mgr.create_record(zone_id=zone_id, record=entry,
record_type=record_type, data=ip)
new_record = mgr.get_records(zone_id, host=entry)[0]
result = get_dns_entry_dict(domain, entry, ip, record_type,
entry_id=new_record['id'])
resp.body = {'dns_entry': result}
示例4: DNSTests
# 需要导入模块: from SoftLayer import DNSManager [as 别名]
# 或者: from SoftLayer.DNSManager import _get_zone_id_from_name [as 别名]
class DNSTests(unittest.TestCase):
def setUp(self):
self.client = MagicMock()
self.dns_client = DNSManager(self.client)
def test_init_exercise(self):
self.assertTrue(hasattr(self.dns_client, 'service'))
self.assertTrue(hasattr(self.dns_client, 'record'))
def test_list_zones(self):
zone_list = ['test']
self.client['Account'].getDomains.return_value = zone_list
zones = self.dns_client.list_zones()
self.assertEqual(zones, zone_list)
def test_get_zone(self):
zone_list = [
{'id': 98765, 'name': 'test-example.com'},
{'id': 12345, 'name': 'example.com', "resourceRecords": ["test"]},
]
# match, with defaults
self.client['Account'].getObject.return_value = zone_list[1]
res = self.dns_client.get_zone(12345)
self.assertEqual(res, zone_list[1])
self.client['Account'].getObject.assert_called_once_with(
id=12345,
mask='resourceRecords')
# No records masked in
self.client['Account'].getObject.reset_mock()
self.client['Account'].getObject.return_value = [zone_list[1]]
self.dns_client.get_zone(12345, records=False)
self.client['Account'].getObject.assert_called_once_with(
id=12345,
mask=None)
def test_resolve_zone_name(self):
zone_list = [{'name': 'example.com', 'id': 12345}]
# matching domain
self.client['Account'].getDomains.return_value = zone_list
res = self.dns_client._get_zone_id_from_name('example.com')
self.assertEqual([12345], res)
self.client['Account'].getDomains.assert_called_once_with(
filter={"domains": {"name": {"operation": "_= example.com"}}})
# no matches
self.client['Account'].getDomains.reset_mock()
self.client['Account'].getDomains.return_value = []
res = self.dns_client._get_zone_id_from_name('example.com')
self.assertEqual([], res)
self.client['Account'].getDomains.assert_called_once_with(
filter={"domains": {"name": {"operation": "_= example.com"}}})
def test_create_zone(self):
call = self.client['Dns_Domain'].createObject
call.return_value = {'name': 'example.com'}
res = self.dns_client.create_zone('example.com')
call.assert_called_once_with({
'name': 'example.com', "resourceRecords": {}, "serial": ANY
})
self.assertEqual(res, {'name': 'example.com'})
def test_delete_zone(self):
self.dns_client.delete_zone(1)
self.client['Dns_Domain'].deleteObject.assert_called_once_with(id=1)
def test_edit_zone(self):
self.dns_client.edit_zone('example.com')
self.client['Dns_Domain'].editObject.assert_called_once_with(
'example.com')
def test_create_record(self):
self.dns_client.create_record(1, 'test', 'TXT', 'testing', ttl=1200)
f = self.client['Dns_Domain_ResourceRecord'].createObject
f.assert_called_once_with(
{
'domainId': 1,
'ttl': 1200,
'host': 'test',
'type': 'TXT',
'data': 'testing'
})
def test_delete_record(self):
self.dns_client.delete_record(1)
f = self.client['Dns_Domain_ResourceRecord'].deleteObject
f.assert_called_once_with(id=1)
def test_edit_record(self):
self.dns_client.edit_record({'id': 1, 'name': 'test', 'ttl': '1800'})
f = self.client['Dns_Domain_ResourceRecord'].editObject
f.assert_called_once_with(
{'id': 1, 'name': 'test', 'ttl': '1800'},
id=1
#.........这里部分代码省略.........