diff options
| author | Russell Bryant <rbryant@redhat.com> | 2012-05-29 17:22:33 -0400 |
|---|---|---|
| committer | Russell Bryant <rbryant@redhat.com> | 2012-05-31 15:19:31 -0400 |
| commit | 72550284ee6cdbda9c1a6762deb140b670634d2f (patch) | |
| tree | a5d76a51f8c1cf6e7bd15052f50973784aa65a1c | |
| parent | 836ffbd489f28a1d370cb1003bd8d62de4783351 (diff) | |
Add resize_instance() to the compute rpcapi.
Part of bug 1006467.
This method is used by the compute manager. Add it to the compute
rpcapi and use it from there.
Change-Id: I873fc0740595f7387ea476b11fd2c70d29d4765a
| -rw-r--r-- | nova/compute/manager.py | 9 | ||||
| -rw-r--r-- | nova/compute/rpcapi.py | 5 | ||||
| -rw-r--r-- | nova/tests/compute/test_rpcapi.py | 4 |
3 files changed, 11 insertions, 7 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py index 377f498c2..fde9e0e4c 100644 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -1351,13 +1351,8 @@ class ComputeManager(manager.SchedulerDependentManager): 'status': 'pre-migrating'}) LOG.audit(_('Migrating'), context=context, instance=instance_ref) - topic = rpc.queue_get_for(context, FLAGS.compute_topic, - instance_ref['host']) - rpc.cast(context, topic, - {'method': 'resize_instance', - 'args': {'instance_uuid': instance_ref['uuid'], - 'migration_id': migration_ref['id'], - 'image': image}}) + self.compute_rpcapi.resize_instance(context, instance_ref, + migration_ref['id'], image) extra_usage_info = dict(new_instance_type=new_instance_type['name'], new_instance_type_id=new_instance_type['id']) diff --git a/nova/compute/rpcapi.py b/nova/compute/rpcapi.py index 78ccb8cea..f77af0415 100644 --- a/nova/compute/rpcapi.py +++ b/nova/compute/rpcapi.py @@ -222,6 +222,11 @@ class ComputeAPI(nova.rpc.proxy.RpcProxy): instance_uuid=instance['uuid']), topic=self._compute_topic(ctxt, None, instance)) + def resize_instance(self, ctxt, instance, migration_id, image): + self.cast(ctxt, self.make_msg('resize_instance', + instance_uuid=instance['uuid'], migration_id=migration_id, + image=image), topic=self._compute_topic(ctxt, None, instance)) + def resume_instance(self, ctxt, instance): self.cast(ctxt, self.make_msg('resume_instance', instance_uuid=instance['uuid']), diff --git a/nova/tests/compute/test_rpcapi.py b/nova/tests/compute/test_rpcapi.py index 47c986c71..8d78f3a64 100644 --- a/nova/tests/compute/test_rpcapi.py +++ b/nova/tests/compute/test_rpcapi.py @@ -190,6 +190,10 @@ class ComputeRpcAPITestCase(test.TestCase): self._test_compute_api('reset_network', 'cast', instance=self.fake_instance) + def test_resize_instance(self): + self._test_compute_api('resize_instance', 'cast', + instance=self.fake_instance, migration_id='id', image='image') + def test_resume_instance(self): self._test_compute_api('resume_instance', 'cast', instance=self.fake_instance) |
