enginefacade: 'ec2_instance' and 'instance_fault'

Use enginefacade in 'ec2_instance' and 'instance_fault' sections.

Implements: blueprint new-oslodb-enginefacade

Closes-Bug: #1533684

Co-Authored-By: Sergey Nikitin <snikitin@mirantis.com>

Change-Id: I39406c41f8674fff538b15d8e23b4e9258cf5fc3
This commit is contained in:
Pavel Kholkin 2015-12-28 15:07:42 +03:00
parent 806113e4f4
commit 86963e60be
4 changed files with 15 additions and 11 deletions

View File

@ -233,6 +233,7 @@ class Controller(wsgi.Controller):
instance_list = objects.InstanceList()
if is_detail:
instance_list._context = context
instance_list.fill_faults()
response = self._view_builder.detail(req, instance_list)
else:

View File

@ -404,6 +404,7 @@ class ServersController(wsgi.Controller):
instance_list = objects.InstanceList()
if is_detail:
instance_list._context = context
instance_list.fill_faults()
response = self._view_builder.detail(req, instance_list)
else:

View File

@ -5749,14 +5749,16 @@ def aggregate_host_add(context, aggregate_id, host):
################
@main_context_manager.writer
def instance_fault_create(context, values):
"""Create a new InstanceFault."""
fault_ref = models.InstanceFault()
fault_ref.update(values)
fault_ref.save()
fault_ref.save(context.session)
return dict(fault_ref)
@main_context_manager.reader
def instance_fault_get_by_instance_uuids(context, instance_uuids):
"""Get all instance faults for the provided instance_uuids."""
if not instance_uuids:
@ -5927,6 +5929,7 @@ def action_event_get_by_id(context, action_id, event_id):
@require_context
@main_context_manager.writer
def ec2_instance_create(context, instance_uuid, id=None):
"""Create ec2 compatible instance by provided uuid."""
ec2_instance_ref = models.InstanceIdMapping()
@ -5934,12 +5937,13 @@ def ec2_instance_create(context, instance_uuid, id=None):
if id is not None:
ec2_instance_ref.update({'id': id})
ec2_instance_ref.save()
ec2_instance_ref.save(context.session)
return ec2_instance_ref
@require_context
@main_context_manager.reader
def ec2_instance_get_by_uuid(context, instance_uuid):
result = _ec2_instance_get_query(context).\
filter_by(uuid=instance_uuid).\
@ -5952,6 +5956,7 @@ def ec2_instance_get_by_uuid(context, instance_uuid):
@require_context
@main_context_manager.reader
def ec2_instance_get_by_id(context, instance_id):
result = _ec2_instance_get_query(context).\
filter_by(id=instance_id).\
@ -5964,16 +5969,14 @@ def ec2_instance_get_by_id(context, instance_id):
@require_context
@main_context_manager.reader
def get_instance_uuid_by_ec2_id(context, ec2_id):
result = ec2_instance_get_by_id(context, ec2_id)
return result['uuid']
def _ec2_instance_get_query(context, session=None):
return model_query(context,
models.InstanceIdMapping,
session=session,
read_deleted='yes')
def _ec2_instance_get_query(context):
return model_query(context, models.InstanceIdMapping, read_deleted='yes')
def _task_log_get_query(context, task_name, period_beginning,

View File

@ -11280,8 +11280,6 @@ class EvacuateHostTestCase(BaseTestCase):
send_node=False):
network_api = self.compute.network_api
ctxt = context.get_admin_context()
mock_context = mock.Mock()
mock_context.elevated.return_value = ctxt
node = limits = None
if send_node:
@ -11290,7 +11288,8 @@ class EvacuateHostTestCase(BaseTestCase):
@mock.patch.object(network_api, 'setup_networks_on_host')
@mock.patch.object(network_api, 'setup_instance_network_on_host')
def _test_rebuild(mock_setup_instance_network_on_host,
@mock.patch('nova.context.RequestContext.elevated', return_value=ctxt)
def _test_rebuild(mock_context, mock_setup_instance_network_on_host,
mock_setup_networks_on_host):
orig_image_ref = None
image_ref = None
@ -11298,7 +11297,7 @@ class EvacuateHostTestCase(BaseTestCase):
bdms = objects.BlockDeviceMappingList.get_by_instance_uuid(
self.context, self.inst.uuid)
self.compute.rebuild_instance(
mock_context, self.inst, orig_image_ref,
ctxt, self.inst, orig_image_ref,
image_ref, injected_files, 'newpass', {}, bdms, recreate=True,
on_shared_storage=on_shared_storage, migration=migration,
scheduled_node=node, limits=limits)