Merge "Add host_name information into nova driver"
This commit is contained in:
commit
2759d2c4ee
|
@ -76,7 +76,11 @@ class NovaDriver(datasource_driver.DataSourceDriver,
|
|||
'extract-fn': safe_id}},
|
||||
{'fieldname': 'OS-EXT-AZ:availability_zone', 'col': 'zone',
|
||||
'desc': 'The availability zone of host',
|
||||
'translator': value_trans})}
|
||||
'translator': value_trans},
|
||||
{'fieldname': 'OS-EXT-SRV-ATTR:hypervisor_hostname',
|
||||
'desc': ('The hostname of hypervisor where the server is' +
|
||||
'running'),
|
||||
'col': 'host_name', 'translator': value_trans})}
|
||||
|
||||
flavors_translator = {
|
||||
'translation-type': 'HDICT',
|
||||
|
|
|
@ -34,7 +34,7 @@ class NovaFakeClient(mock.MagicMock):
|
|||
self.availability_zones.list.return_value = self.get_zone_list()
|
||||
|
||||
def get_mock_server(self, id, name, host_id, status, tenant_id, user_id,
|
||||
flavor, image, zone=None):
|
||||
flavor, image, zone=None, host_name=None):
|
||||
server = mock.MagicMock()
|
||||
server.id = id
|
||||
server.hostId = host_id
|
||||
|
@ -49,6 +49,12 @@ class NovaFakeClient(mock.MagicMock):
|
|||
else:
|
||||
# This ensures that the magic mock raises an AttributeError
|
||||
delattr(server, 'OS-EXT-AZ:availability_zone')
|
||||
if host_name is not None:
|
||||
setattr(server, 'OS-EXT-SRV-ATTR:hypervisor_hostname',
|
||||
host_name)
|
||||
else:
|
||||
# This ensures that the magic mock raises an AttributeError
|
||||
delattr(server, 'OS-EXT-SRV-ATTR:hypervisor_hostname')
|
||||
return server
|
||||
|
||||
def get_server_list(self):
|
||||
|
@ -58,7 +64,7 @@ class NovaFakeClient(mock.MagicMock):
|
|||
'BUILD',
|
||||
'50e14867-7c64-4ec9-be8d-ed2470ca1d24',
|
||||
'33ea0494-2bdf-4382-a445-9068997430b9',
|
||||
{"id": 1}, {"id": 2}, 'default'))
|
||||
{"id": 1}, {"id": 2}, 'default', 'host1'))
|
||||
|
||||
server_two = (
|
||||
self.get_mock_server(5678, 'sample-server2',
|
||||
|
@ -74,7 +80,7 @@ class NovaFakeClient(mock.MagicMock):
|
|||
'ACTIVE',
|
||||
'50e14867-7c64-4ec9-be8d-ed2470ca1d24',
|
||||
'33ea0494-2bdf-4382-a445-9068997430b9',
|
||||
{"id": 1}, {"id": 2}, 'foo'))
|
||||
{"id": 1}, {"id": 2}, 'foo', 'host2'))
|
||||
|
||||
return [server_one, server_two, server_three]
|
||||
|
||||
|
|
|
@ -57,6 +57,7 @@ class TestNovaDriver(base.TestCase):
|
|||
image_id = t[6]
|
||||
flavor_id = t[7]
|
||||
zone = t[8]
|
||||
host_name = t[9]
|
||||
self.assertIn(id, [1234, 5678, 9012])
|
||||
# see congress.datasources.tests.unit.fakes for actual values
|
||||
if id == 1234:
|
||||
|
@ -70,6 +71,7 @@ class TestNovaDriver(base.TestCase):
|
|||
self.assertEqual(2, image_id)
|
||||
self.assertEqual(1, flavor_id)
|
||||
self.assertEqual('default', zone)
|
||||
self.assertEqual('host1', host_name)
|
||||
|
||||
elif id == 5678:
|
||||
self.assertEqual("sample-server2", name)
|
||||
|
@ -82,6 +84,7 @@ class TestNovaDriver(base.TestCase):
|
|||
self.assertEqual(2, image_id)
|
||||
self.assertEqual(1, flavor_id)
|
||||
self.assertEqual('None', zone)
|
||||
self.assertEqual('None', host_name)
|
||||
|
||||
elif id == 9012:
|
||||
self.assertEqual("sample-server3", name)
|
||||
|
@ -94,6 +97,7 @@ class TestNovaDriver(base.TestCase):
|
|||
self.assertEqual(2, image_id)
|
||||
self.assertEqual(1, flavor_id)
|
||||
self.assertEqual('foo', zone)
|
||||
self.assertEqual('host2', host_name)
|
||||
|
||||
def test_flavors(self):
|
||||
flavor_raw = self.nova.flavors.list(detailed=True)
|
||||
|
|
Loading…
Reference in New Issue