Merge "Add live.migration.force.complete to the legacy notification whitelist" into stable/newton
This commit is contained in:
commit
e7fc559b49
|
@ -237,6 +237,8 @@ class LegacyValidatingNotifier(object):
|
|||
'compute.instance.finish_resize.start',
|
||||
'compute.instance.live.migration.abort.start',
|
||||
'compute.instance.live.migration.abort.end',
|
||||
'compute.instance.live.migration.force.complete.start',
|
||||
'compute.instance.live.migration.force.complete.end',
|
||||
'compute.instance.live_migration.post.dest.end',
|
||||
'compute.instance.live_migration.post.dest.start',
|
||||
'compute.instance.live_migration._post.end',
|
||||
|
|
|
@ -56,6 +56,7 @@ from nova.tests.unit import fake_flavor
|
|||
from nova.tests.unit import fake_instance
|
||||
from nova.tests.unit import fake_network
|
||||
from nova.tests.unit import fake_network_cache_model
|
||||
from nova.tests.unit import fake_notifier
|
||||
from nova.tests.unit.objects import test_instance_fault
|
||||
from nova.tests.unit.objects import test_instance_info_cache
|
||||
from nova.tests import uuidsentinel as uuids
|
||||
|
@ -4528,6 +4529,8 @@ class ComputeManagerBuildInstanceTestCase(test.NoDBTestCase):
|
|||
class ComputeManagerMigrationTestCase(test.NoDBTestCase):
|
||||
def setUp(self):
|
||||
super(ComputeManagerMigrationTestCase, self).setUp()
|
||||
fake_notifier.stub_notifier(self)
|
||||
self.addCleanup(fake_notifier.reset)
|
||||
self.compute = importutils.import_object(CONF.compute_manager)
|
||||
self.context = context.RequestContext(fakes.FAKE_USER_ID,
|
||||
fakes.FAKE_PROJECT_ID)
|
||||
|
@ -4947,33 +4950,37 @@ class ComputeManagerMigrationTestCase(test.NoDBTestCase):
|
|||
|
||||
def test_live_migration_force_complete_succeeded(self):
|
||||
|
||||
instance = objects.Instance(uuid=str(uuid.uuid4()))
|
||||
migration = objects.Migration()
|
||||
migration.status = 'running'
|
||||
migration.id = 0
|
||||
|
||||
@mock.patch.object(compute_utils.EventReporter, '__enter__')
|
||||
@mock.patch.object(self.compute, '_notify_about_instance_usage')
|
||||
@mock.patch('nova.image.glance.generate_image_url',
|
||||
return_value='fake-url')
|
||||
@mock.patch.object(objects.Migration, 'get_by_id',
|
||||
return_value=migration)
|
||||
@mock.patch.object(self.compute.driver,
|
||||
'live_migration_force_complete')
|
||||
def _do_test(force_complete, get_by_id, _notify_about_instance_usage,
|
||||
def _do_test(force_complete, get_by_id, gen_img_url,
|
||||
enter_event_reporter):
|
||||
self.compute.live_migration_force_complete(
|
||||
self.context, instance, migration.id)
|
||||
self.context, self.instance, migration.id)
|
||||
|
||||
force_complete.assert_called_once_with(instance)
|
||||
force_complete.assert_called_once_with(self.instance)
|
||||
|
||||
_notify_usage_calls = [
|
||||
mock.call(self.context, instance,
|
||||
'live.migration.force.complete.start'),
|
||||
mock.call(self.context, instance,
|
||||
'live.migration.force.complete.end')
|
||||
]
|
||||
|
||||
_notify_about_instance_usage.assert_has_calls(_notify_usage_calls)
|
||||
enter_event_reporter.assert_called_once_with()
|
||||
self.assertEqual(2, len(fake_notifier.NOTIFICATIONS))
|
||||
self.assertEqual(
|
||||
'compute.instance.live.migration.force.complete.start',
|
||||
fake_notifier.NOTIFICATIONS[0].event_type)
|
||||
self.assertEqual(
|
||||
self.instance.uuid,
|
||||
fake_notifier.NOTIFICATIONS[0].payload['instance_id'])
|
||||
self.assertEqual(
|
||||
'compute.instance.live.migration.force.complete.end',
|
||||
fake_notifier.NOTIFICATIONS[1].event_type)
|
||||
self.assertEqual(
|
||||
self.instance.uuid,
|
||||
fake_notifier.NOTIFICATIONS[1].payload['instance_id'])
|
||||
|
||||
_do_test()
|
||||
|
||||
|
|
Loading…
Reference in New Issue