Create an instance DNS record based on instance UUID.
Previously we created one based on instance name only. Since name is not guaranteed to be unique, best to have one based on uuid as well. Both point to the same address, of course. For blueprint public-and-private-dns. Change-Id: Ibb17f2a49f00b4522205d6b4508f432f6f5b0c5d
This commit is contained in:
@@ -285,7 +285,8 @@ class FlatNetworkTestCase(test.TestCase):
|
||||
mox.IgnoreArg()).AndReturn({'security_groups':
|
||||
[{'id': 0}]})
|
||||
db.instance_get(self.context,
|
||||
1).AndReturn({'display_name': HOST})
|
||||
1).AndReturn({'display_name': HOST,
|
||||
'uuid': 'test-00001'})
|
||||
db.fixed_ip_associate_pool(mox.IgnoreArg(),
|
||||
mox.IgnoreArg(),
|
||||
mox.IgnoreArg()).AndReturn('192.168.0.101')
|
||||
@@ -300,11 +301,11 @@ class FlatNetworkTestCase(test.TestCase):
|
||||
zone1 = "example.org"
|
||||
zone2 = "example.com"
|
||||
driver = self.network.instance_dns_manager
|
||||
driver.create_entry("hostone", "10.0.0.1", 0, zone1)
|
||||
driver.create_entry("hosttwo", "10.0.0.2", 0, zone1)
|
||||
driver.create_entry("hostthree", "10.0.0.3", 0, zone1)
|
||||
driver.create_entry("hostfour", "10.0.0.4", 0, zone1)
|
||||
driver.create_entry("hostfive", "10.0.0.5", 0, zone2)
|
||||
driver.create_entry("hostone", "10.0.0.1", "A", zone1)
|
||||
driver.create_entry("hosttwo", "10.0.0.2", "A", zone1)
|
||||
driver.create_entry("hostthree", "10.0.0.3", "A", zone1)
|
||||
driver.create_entry("hostfour", "10.0.0.4", "A", zone1)
|
||||
driver.create_entry("hostfive", "10.0.0.5", "A", zone2)
|
||||
|
||||
driver.delete_entry("hostone", zone1)
|
||||
driver.modify_address("hostfour", "10.0.0.1", zone1)
|
||||
@@ -322,6 +323,13 @@ class FlatNetworkTestCase(test.TestCase):
|
||||
self.assertEqual(len(addresses), 1)
|
||||
self.assertIn('10.0.0.2', addresses)
|
||||
|
||||
self.assertRaises(exception.InvalidInput,
|
||||
driver.create_entry,
|
||||
"hostname",
|
||||
"10.10.10.10",
|
||||
"invalidtype",
|
||||
zone1)
|
||||
|
||||
def test_instance_dns(self):
|
||||
fixedip = '192.168.0.101'
|
||||
self.mox.StubOutWithMock(db, 'network_get')
|
||||
@@ -343,17 +351,23 @@ class FlatNetworkTestCase(test.TestCase):
|
||||
[{'id': 0}]})
|
||||
|
||||
db.instance_get(self.context,
|
||||
1).AndReturn({'display_name': HOST})
|
||||
1).AndReturn({'display_name': HOST,
|
||||
'uuid': 'test-00001'})
|
||||
db.fixed_ip_associate_pool(mox.IgnoreArg(),
|
||||
mox.IgnoreArg(),
|
||||
mox.IgnoreArg()).AndReturn(fixedip)
|
||||
db.network_get(mox.IgnoreArg(),
|
||||
mox.IgnoreArg()).AndReturn(networks[0])
|
||||
db.network_update(mox.IgnoreArg(), mox.IgnoreArg(), mox.IgnoreArg())
|
||||
|
||||
self.mox.ReplayAll()
|
||||
self.network.add_fixed_ip_to_instance(self.context, 1, HOST,
|
||||
networks[0]['id'])
|
||||
addresses = self.network.instance_dns_manager.get_entries_by_name(HOST)
|
||||
instance_manager = self.network.instance_dns_manager
|
||||
addresses = instance_manager.get_entries_by_name(HOST)
|
||||
self.assertEqual(len(addresses), 1)
|
||||
self.assertEqual(addresses[0], fixedip)
|
||||
addresses = instance_manager.get_entries_by_name('test-00001')
|
||||
self.assertEqual(len(addresses), 1)
|
||||
self.assertEqual(addresses[0], fixedip)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user