diff options
-rw-r--r-- | nova/notifications.py | 4 | ||||
-rw-r--r-- | nova/tests/compute/test_compute_utils.py | 6 | ||||
-rw-r--r-- | nova/tests/test_notifications.py | 6 |
3 files changed, 11 insertions, 5 deletions
diff --git a/nova/notifications.py b/nova/notifications.py index 16a49dcf6..ecd708d60 100644 --- a/nova/notifications.py +++ b/nova/notifications.py @@ -21,6 +21,7 @@ the system. from oslo.config import cfg +from nova.compute import instance_types import nova.context from nova import db from nova.image import glance @@ -283,7 +284,8 @@ def info_from_instance(context, instance_ref, network_info, image_ref_url = glance.generate_image_url(instance_ref['image_ref']) - instance_type_name = instance_ref.get('instance_type', {}).get('name', '') + instance_type = instance_types.extract_instance_type(instance_ref) + instance_type_name = instance_type.get('name', '') if system_metadata is None: system_metadata = utils.metadata_to_dict( diff --git a/nova/tests/compute/test_compute_utils.py b/nova/tests/compute/test_compute_utils.py index 884aac628..2de9d0beb 100644 --- a/nova/tests/compute/test_compute_utils.py +++ b/nova/tests/compute/test_compute_utils.py @@ -260,14 +260,16 @@ class UsageInfoTestCase(test.TestCase): def _create_instance(self, params={}): """Create a test instance.""" + instance_type = instance_types.get_instance_type_by_name('m1.tiny') + sys_meta = instance_types.save_instance_type_info({}, instance_type) inst = {} inst['image_ref'] = 1 inst['reservation_id'] = 'r-fakeres' inst['launch_time'] = '10' inst['user_id'] = self.user_id inst['project_id'] = self.project_id - type_id = instance_types.get_instance_type_by_name('m1.tiny')['id'] - inst['instance_type_id'] = type_id + inst['instance_type_id'] = instance_type['id'] + inst['system_metadata'] = sys_meta inst['ami_launch_index'] = 0 inst['root_gb'] = 0 inst['ephemeral_gb'] = 0 diff --git a/nova/tests/test_notifications.py b/nova/tests/test_notifications.py index c9c80818a..0c50d4933 100644 --- a/nova/tests/test_notifications.py +++ b/nova/tests/test_notifications.py @@ -71,18 +71,20 @@ class NotificationsTestCase(test.TestCase): self.instance = self._wrapped_create() def _wrapped_create(self, params=None): + instance_type = instance_types.get_instance_type_by_name('m1.tiny') + sys_meta = instance_types.save_instance_type_info({}, instance_type) inst = {} inst['image_ref'] = 1 inst['user_id'] = self.user_id inst['project_id'] = self.project_id - type_id = instance_types.get_instance_type_by_name('m1.tiny')['id'] - inst['instance_type_id'] = type_id + inst['instance_type_id'] = instance_type['id'] inst['root_gb'] = 0 inst['ephemeral_gb'] = 0 inst['access_ip_v4'] = '1.2.3.4' inst['access_ip_v6'] = 'feed:5eed' inst['display_name'] = 'test_instance' inst['hostname'] = 'test_instance_hostname' + inst['system_metadata'] = sys_meta if params: inst.update(params) return db.instance_create(self.context, inst) |