Merge "Query deleted instance records during _destroy_evacuated_instances"
This commit is contained in:
commit
79071c31a4
@ -629,13 +629,14 @@ class ComputeManager(manager.Manager):
|
||||
'status': ['accepted', 'done'],
|
||||
'migration_type': 'evacuation',
|
||||
}
|
||||
evacuations = objects.MigrationList.get_by_filters(context, filters)
|
||||
with utils.temporary_mutation(context, read_deleted='yes'):
|
||||
evacuations = objects.MigrationList.get_by_filters(context,
|
||||
filters)
|
||||
if not evacuations:
|
||||
return
|
||||
evacuations = {mig.instance_uuid: mig for mig in evacuations}
|
||||
|
||||
filters = {'deleted': False}
|
||||
local_instances = self._get_instances_on_driver(context, filters)
|
||||
local_instances = self._get_instances_on_driver(context)
|
||||
evacuated = [inst for inst in local_instances
|
||||
if inst.uuid in evacuations]
|
||||
for instance in evacuated:
|
||||
|
@ -7184,7 +7184,7 @@ class ComputeTestCase(BaseTestCase,
|
||||
{'source_compute': self.compute.host,
|
||||
'status': ['accepted', 'done'],
|
||||
'migration_type': 'evacuation'})
|
||||
mock_get_inst.assert_called_once_with(fake_context, {'deleted': False})
|
||||
mock_get_inst.assert_called_once_with(fake_context)
|
||||
mock_get_nw.assert_called_once_with(fake_context, evacuated_instance)
|
||||
mock_get_blk.assert_called_once_with(fake_context, evacuated_instance)
|
||||
mock_is_inst.assert_called_once_with(fake_context, evacuated_instance)
|
||||
@ -7238,7 +7238,7 @@ class ComputeTestCase(BaseTestCase,
|
||||
return_value='fake_network_info') as mock_get_nw:
|
||||
self.compute._destroy_evacuated_instances(fake_context)
|
||||
|
||||
mock_get_drv.assert_called_once_with(fake_context, {'deleted': False})
|
||||
mock_get_drv.assert_called_once_with(fake_context)
|
||||
mock_get_nw.assert_called_once_with(fake_context, evacuated_instance)
|
||||
mock_get_blk.assert_called_once_with(fake_context, evacuated_instance)
|
||||
mock_check_local.assert_called_once_with(fake_context,
|
||||
@ -7296,7 +7296,7 @@ class ComputeTestCase(BaseTestCase,
|
||||
return_value='fake_network_info') as mock_get_nw:
|
||||
self.compute._destroy_evacuated_instances(fake_context)
|
||||
|
||||
mock_get_inst.assert_called_once_with(fake_context, {'deleted': False})
|
||||
mock_get_inst.assert_called_once_with(fake_context)
|
||||
mock_get_nw.assert_called_once_with(fake_context, evacuated_instance)
|
||||
mock_get_blk.assert_called_once_with(fake_context, evacuated_instance)
|
||||
mock_check_local.assert_called_once_with(fake_context,
|
||||
|
@ -658,11 +658,12 @@ class ComputeManagerUnitTestCase(test.NoDBTestCase):
|
||||
@mock.patch.object(objects.InstanceList, 'get_by_host')
|
||||
@mock.patch.object(fake_driver.FakeDriver, 'destroy')
|
||||
@mock.patch.object(fake_driver.FakeDriver, 'init_host')
|
||||
@mock.patch('nova.utils.temporary_mutation')
|
||||
@mock.patch('nova.objects.MigrationList.get_by_filters')
|
||||
@mock.patch('nova.objects.Migration.save')
|
||||
def test_init_host_with_evacuated_instance(self, mock_save, mock_mig_get,
|
||||
mock_init_host, mock_destroy, mock_host_get, mock_admin_ctxt,
|
||||
mock_init_virt, mock_get_inst):
|
||||
mock_temp_mut, mock_init_host, mock_destroy, mock_host_get,
|
||||
mock_admin_ctxt, mock_init_virt, mock_get_inst):
|
||||
our_host = self.compute.host
|
||||
not_our_host = 'not-' + our_host
|
||||
|
||||
@ -685,7 +686,8 @@ class ComputeManagerUnitTestCase(test.NoDBTestCase):
|
||||
mock_host_get.assert_called_once_with(self.context, our_host,
|
||||
expected_attrs=['info_cache', 'metadata'])
|
||||
mock_init_virt.assert_called_once_with()
|
||||
mock_get_inst.assert_called_once_with(self.context, {'deleted': False})
|
||||
mock_temp_mut.assert_called_once_with(self.context, read_deleted='yes')
|
||||
mock_get_inst.assert_called_once_with(self.context)
|
||||
mock_get_net.assert_called_once_with(self.context, deleted_instance)
|
||||
|
||||
# ensure driver.destroy is called so that driver may
|
||||
|
Loading…
x
Reference in New Issue
Block a user