diff options
| author | Jenkins <jenkins@review.openstack.org> | 2012-06-01 13:52:34 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2012-06-01 13:52:34 +0000 |
| commit | 2f48ee1621a2fa52fe8cf5dc6c6d6938a197690f (patch) | |
| tree | 52adb784e1ada68dc75f09a287f3324710e05f73 | |
| parent | 0dd15a784482f92ad5aca631c1dc26012b62e3eb (diff) | |
| parent | 0db055b9b3e5e74d229b38df06408166b53069b7 (diff) | |
Merge "Add get_console_pool_info() to the compute rpcapi."
| -rw-r--r-- | nova/compute/rpcapi.py | 5 | ||||
| -rw-r--r-- | nova/console/manager.py | 11 | ||||
| -rw-r--r-- | nova/console/vmrc_manager.py | 11 | ||||
| -rw-r--r-- | nova/tests/compute/test_rpcapi.py | 4 |
4 files changed, 17 insertions, 14 deletions
diff --git a/nova/compute/rpcapi.py b/nova/compute/rpcapi.py index 5db0282c3..443a2ece6 100644 --- a/nova/compute/rpcapi.py +++ b/nova/compute/rpcapi.py @@ -101,6 +101,11 @@ class ComputeAPI(nova.rpc.proxy.RpcProxy): instance_uuid=instance['uuid'], tail_length=tail_length), topic=self._compute_topic(ctxt, None, instance)) + def get_console_pool_info(self, ctxt, console_type, host): + return self.call(ctxt, self.make_msg('get_console_pool_info', + console_type=console_type), + topic=self._compute_topic(ctxt, host, None)) + def get_diagnostics(self, ctxt, instance): return self.call(ctxt, self.make_msg('get_diagnostics', instance_uuid=instance['uuid']), diff --git a/nova/console/manager.py b/nova/console/manager.py index 96a9ef31c..cc2c71d41 100644 --- a/nova/console/manager.py +++ b/nova/console/manager.py @@ -19,13 +19,13 @@ import socket +from nova.compute import rpcapi as compute_rpcapi from nova import exception from nova import flags from nova import log as logging from nova import manager from nova.openstack.common import cfg from nova.openstack.common import importutils -from nova import rpc from nova import utils @@ -61,6 +61,7 @@ class ConsoleProxyManager(manager.Manager): self.driver = importutils.import_object(console_driver) super(ConsoleProxyManager, self).__init__(*args, **kwargs) self.driver.host = self.host + self.compute_rpcapi = compute_rpcapi.ComputeAPI() def init_host(self): self.driver.init_host() @@ -121,12 +122,8 @@ class ConsoleProxyManager(manager.Manager): 'username': 'test', 'password': '1234pass'} else: - pool_info = rpc.call(context, - rpc.queue_get_for(context, - FLAGS.compute_topic, - instance_host), - {'method': 'get_console_pool_info', - 'args': {'console_type': console_type}}) + pool_info = compute_rpcapi.get_console_pool_info(context, + console_type, instance_host) pool_info['password'] = self.driver.fix_pool_password( pool_info['password']) pool_info['host'] = self.host diff --git a/nova/console/vmrc_manager.py b/nova/console/vmrc_manager.py index 2008ff1b2..996ed2afd 100644 --- a/nova/console/vmrc_manager.py +++ b/nova/console/vmrc_manager.py @@ -17,13 +17,13 @@ """VMRC Console Manager.""" +from nova.compute import rpcapi as compute_rpcapi from nova import exception from nova import flags from nova import log as logging from nova import manager from nova.openstack.common import cfg from nova.openstack.common import importutils -from nova import rpc from nova.virt import vmwareapi_conn @@ -47,6 +47,7 @@ class ConsoleVMRCManager(manager.Manager): def __init__(self, console_driver=None, *args, **kwargs): self.driver = importutils.import_object(FLAGS.console_driver) + self.compute_rpcapi = compute_rpcapi.ComputeAPI() super(ConsoleVMRCManager, self).__init__(*args, **kwargs) def init_host(self): @@ -137,12 +138,8 @@ class ConsoleVMRCManager(manager.Manager): self.host, console_type) except exception.NotFound: - pool_info = rpc.call(context, - rpc.queue_get_for(context, - FLAGS.compute_topic, - instance_host), - {'method': 'get_console_pool_info', - 'args': {'console_type': console_type}}) + pool_info = self.compute_rpcapi.get_console_pool_info(context, + console_type, instance_host) pool_info['password'] = self.driver.fix_pool_password( pool_info['password']) pool_info['host'] = self.host diff --git a/nova/tests/compute/test_rpcapi.py b/nova/tests/compute/test_rpcapi.py index 593598ebb..de9d337f9 100644 --- a/nova/tests/compute/test_rpcapi.py +++ b/nova/tests/compute/test_rpcapi.py @@ -108,6 +108,10 @@ class ComputeRpcAPITestCase(test.TestCase): self._test_compute_api('get_console_output', 'call', instance=self.fake_instance, tail_length='tl') + def test_get_console_pool_info(self): + self._test_compute_api('get_console_pool_info', 'call', + console_type='type', host='host') + def test_get_diagnostics(self): self._test_compute_api('get_diagnostics', 'call', instance=self.fake_instance) |
