summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nova/notifications.py4
-rw-r--r--nova/tests/compute/test_compute_utils.py6
-rw-r--r--nova/tests/test_notifications.py6
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)