summaryrefslogtreecommitdiffstats
path: root/nova/compute
diff options
context:
space:
mode:
Diffstat (limited to 'nova/compute')
-rw-r--r--nova/compute/manager.py7
-rw-r--r--nova/compute/rpcapi.py7
2 files changed, 9 insertions, 5 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 2ac5a7eaf..d9f3ee14f 100644
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -2105,11 +2105,8 @@ class ComputeManager(manager.SchedulerDependentManager):
# Define domain at destination host, without doing it,
# pause/suspend/terminate do not work.
- rpc.call(ctxt,
- rpc.queue_get_for(ctxt, FLAGS.compute_topic, dest),
- {"method": "post_live_migration_at_destination",
- "args": {'instance_id': instance_ref['id'],
- 'block_migration': block_migration}})
+ self.compute_rpcapi.post_live_migration_at_destination(ctxt,
+ instance_ref, block_migration, dest)
# No instance booting at source host, but instance dir
# must be deleted for preparing next block migration
diff --git a/nova/compute/rpcapi.py b/nova/compute/rpcapi.py
index 18da7b779..005b5a8a5 100644
--- a/nova/compute/rpcapi.py
+++ b/nova/compute/rpcapi.py
@@ -161,6 +161,13 @@ class ComputeAPI(nova.rpc.proxy.RpcProxy):
instance_uuid=instance['uuid']),
topic=self._compute_topic(ctxt, None, instance))
+ def post_live_migration_at_destination(self, ctxt, instance,
+ block_migration, host):
+ return self.call(ctxt,
+ self.make_msg('post_live_migration_at_destination',
+ instance_id=instance['id'], block_migration=block_migration),
+ self._compute_topic(ctxt, host, None))
+
def pause_instance(self, ctxt, instance):
self.cast(ctxt, self.make_msg('pause_instance',
instance_uuid=instance['uuid']),