diff options
| author | Matthew Treinish <treinish@linux.vnet.ibm.com> | 2012-12-11 10:04:24 -0500 |
|---|---|---|
| committer | Matthew Treinish <treinish@linux.vnet.ibm.com> | 2012-12-19 14:11:33 -0500 |
| commit | 79d919bc8744e5886186794fd81fd136086bbeab (patch) | |
| tree | 00abdf2e5b08570f9ce894cf5dd67f24d8a2e7f3 | |
| parent | 5fa80467c2d03e514f5d2cd574406d8895fcecc4 (diff) | |
Add get_backdoor_port to consoleauth.
This adds a get_backdoor_port function to the consoleauth
service which enables returning the eventlet_backdoor port
from rpc for the service.
Change-Id: I7da9cbc8111342b5f49f148a8e3389faf5c4f2ab
| -rw-r--r-- | nova/consoleauth/manager.py | 5 | ||||
| -rw-r--r-- | nova/consoleauth/rpcapi.py | 5 | ||||
| -rw-r--r-- | nova/tests/consoleauth/test_consoleauth.py | 5 | ||||
| -rw-r--r-- | nova/tests/consoleauth/test_rpcapi.py | 11 |
4 files changed, 24 insertions, 2 deletions
diff --git a/nova/consoleauth/manager.py b/nova/consoleauth/manager.py index 23d0a06f6..8d2171de7 100644 --- a/nova/consoleauth/manager.py +++ b/nova/consoleauth/manager.py @@ -45,7 +45,7 @@ CONF.import_opt('memcached_servers', 'nova.config') class ConsoleAuthManager(manager.Manager): """Manages token based authentication.""" - RPC_API_VERSION = '1.0' + RPC_API_VERSION = '1.1' def __init__(self, scheduler_driver=None, *args, **kwargs): super(ConsoleAuthManager, self).__init__(*args, **kwargs) @@ -75,3 +75,6 @@ class ConsoleAuthManager(manager.Manager): LOG.audit(_("Checking Token: %(token)s, %(token_valid)s)"), locals()) if token_valid: return jsonutils.loads(token_str) + + def get_backdoor_port(self, context): + return self.backdoor_port diff --git a/nova/consoleauth/rpcapi.py b/nova/consoleauth/rpcapi.py index f4b4390ac..64b915ec3 100644 --- a/nova/consoleauth/rpcapi.py +++ b/nova/consoleauth/rpcapi.py @@ -30,6 +30,7 @@ class ConsoleAuthAPI(nova.openstack.common.rpc.proxy.RpcProxy): API version history: 1.0 - Initial version. + 1.1 - Added get_backdoor_port() ''' # @@ -59,3 +60,7 @@ class ConsoleAuthAPI(nova.openstack.common.rpc.proxy.RpcProxy): def check_token(self, ctxt, token): return self.call(ctxt, self.make_msg('check_token', token=token)) + + def get_backdoor_port(self, ctxt, host): + return self.call(ctxt, self.make_msg('get_backdoor_port'), + version='1.1') diff --git a/nova/tests/consoleauth/test_consoleauth.py b/nova/tests/consoleauth/test_consoleauth.py index 8db72221e..385a41218 100644 --- a/nova/tests/consoleauth/test_consoleauth.py +++ b/nova/tests/consoleauth/test_consoleauth.py @@ -49,3 +49,8 @@ class ConsoleauthTestCase(test.TestCase): self.assertTrue(self.manager.check_token(self.context, token)) timeutils.advance_time_seconds(1) self.assertFalse(self.manager.check_token(self.context, token)) + + def test_get_backdoor_port(self): + self.manager.backdoor_port = 59697 + port = self.manager.get_backdoor_port(self.context) + self.assertEqual(port, self.manager.backdoor_port) diff --git a/nova/tests/consoleauth/test_rpcapi.py b/nova/tests/consoleauth/test_rpcapi.py index 51a8eda14..c15ff7ff4 100644 --- a/nova/tests/consoleauth/test_rpcapi.py +++ b/nova/tests/consoleauth/test_rpcapi.py @@ -18,6 +18,7 @@ Unit Tests for nova.consoleauth.rpcapi """ +from nova.consoleauth import manager as consoleauth_manager from nova.consoleauth import rpcapi as consoleauth_rpcapi from nova import context from nova.openstack.common import cfg @@ -32,8 +33,12 @@ class ConsoleAuthRpcAPITestCase(test.TestCase): ctxt = context.RequestContext('fake_user', 'fake_project') rpcapi = consoleauth_rpcapi.ConsoleAuthAPI() expected_retval = 'foo' + expected_version = kwargs.pop('version', rpcapi.BASE_RPC_API_VERSION) expected_msg = rpcapi.make_msg(method, **kwargs) - expected_msg['version'] = rpcapi.BASE_RPC_API_VERSION + expected_msg['version'] = expected_version + + if method == 'get_backdoor_port': + del expected_msg['args']['host'] self.call_ctxt = None self.call_topic = None @@ -64,3 +69,7 @@ class ConsoleAuthRpcAPITestCase(test.TestCase): def test_check_token(self): self._test_consoleauth_api('check_token', token='t') + + def test_get_backdoor_port(self): + self._test_consoleauth_api('get_backdoor_port', host='fake_host', + version='1.1') |
