diff options
| author | Dean Troyer <dtroyer@gmail.com> | 2014-10-17 22:26:57 -0500 |
|---|---|---|
| committer | Dean Troyer <dtroyer@gmail.com> | 2014-10-18 00:01:45 -0500 |
| commit | 0de67016c7daa1712b568cb2e49728fac3eb57ad (patch) | |
| tree | 9a3e4f893b89983fe1d981663057922d47eb4b94 /openstackclient | |
| parent | 68130fa92182760882def8d3a3a97fcde5d355a1 (diff) | |
| download | python-openstackclient-0de67016c7daa1712b568cb2e49728fac3eb57ad.tar.gz | |
Remove now-unnecessary client creation hacks
Clients that can use ksc Session don't need the old junk to
fake auth anymore:
* compute
* volume
Clients that still need to be fed credentials can pick directly
from the auth object in clientmanager. The _token attribute is
removed, the token can be retrieved from the auth object:
openstackclient/tests/common/test_clientmanager.py
This change will break any plugin that relies on getting a token
from instance._token. They should be updated to use the above, or
preferable, to use keystoneclient.session.Session to create its
HTTP interface object.
Change-Id: I877a29de97a42f85f12a14c274fc003e6fba5135
Diffstat (limited to 'openstackclient')
| -rw-r--r-- | openstackclient/common/clientmanager.py | 3 | ||||
| -rw-r--r-- | openstackclient/compute/client.py | 9 | ||||
| -rw-r--r-- | openstackclient/image/client.py | 2 | ||||
| -rw-r--r-- | openstackclient/network/client.py | 2 | ||||
| -rw-r--r-- | openstackclient/tests/common/test_clientmanager.py | 11 | ||||
| -rw-r--r-- | openstackclient/volume/client.py | 20 |
6 files changed, 6 insertions, 41 deletions
diff --git a/openstackclient/common/clientmanager.py b/openstackclient/common/clientmanager.py index 928ab6ee..336c0da0 100644 --- a/openstackclient/common/clientmanager.py +++ b/openstackclient/common/clientmanager.py @@ -106,9 +106,6 @@ class ClientManager(object): self.auth_ref = self.auth.get_auth_ref(self.session) self._service_catalog = self.auth_ref.service_catalog - # This begone when clients no longer need it... - self._token = self.auth.get_token(self.session) - return def get_endpoint_for_service_type(self, service_type, region_name=None): diff --git a/openstackclient/compute/client.py b/openstackclient/compute/client.py index ff9ed88a..c87bbee7 100644 --- a/openstackclient/compute/client.py +++ b/openstackclient/compute/client.py @@ -43,6 +43,7 @@ def make_client(instance): http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [extension.Extension('list_extensions', list_extensions)] + client = compute_client( session=instance.session, extensions=extensions, @@ -50,14 +51,6 @@ def make_client(instance): timings=instance.timing, ) - # Populate the Nova client to skip another auth query to Identity - if 'token' not in instance._auth_params: - # password flow - client.client.management_url = instance.get_endpoint_for_service_type( - API_NAME, region_name=instance._region_name) - client.client.service_catalog = instance._service_catalog - client.client.auth_token = instance.auth.get_token(instance.session) - return client diff --git a/openstackclient/image/client.py b/openstackclient/image/client.py index a23d349e..84f59437 100644 --- a/openstackclient/image/client.py +++ b/openstackclient/image/client.py @@ -45,7 +45,7 @@ def make_client(instance): return image_client( instance._url, - token=instance._token, + token=instance.auth.get_token(instance.session), cacert=instance._cacert, insecure=instance._insecure, ) diff --git a/openstackclient/network/client.py b/openstackclient/network/client.py index 870fdad1..e4ce2f6a 100644 --- a/openstackclient/network/client.py +++ b/openstackclient/network/client.py @@ -44,7 +44,7 @@ def make_client(instance): region_name=instance._region_name, auth_url=instance._auth_url, endpoint_url=instance._url, - token=instance._token, + token=instance.auth.get_token(instance.session), insecure=instance._insecure, ca_cert=instance._cacert, ) diff --git a/openstackclient/tests/common/test_clientmanager.py b/openstackclient/tests/common/test_clientmanager.py index d0738c79..24adfa0e 100644 --- a/openstackclient/tests/common/test_clientmanager.py +++ b/openstackclient/tests/common/test_clientmanager.py @@ -89,10 +89,9 @@ class TestClientManager(utils.TestCase): fakes.AUTH_URL, client_manager._url, ) - self.assertEqual( fakes.AUTH_TOKEN, - client_manager._token, + client_manager.auth.get_token(None), ) self.assertIsInstance( client_manager.auth, @@ -112,10 +111,6 @@ class TestClientManager(utils.TestCase): ) self.assertEqual( - fakes.AUTH_TOKEN, - client_manager._token, - ) - self.assertEqual( fakes.AUTH_URL, client_manager._auth_url, ) @@ -161,10 +156,6 @@ class TestClientManager(utils.TestCase): client_manager.auth_ref, ) self.assertEqual( - fakes.AUTH_TOKEN, - client_manager._token, - ) - self.assertEqual( dir(SERVICE_CATALOG), dir(client_manager._service_catalog), ) diff --git a/openstackclient/volume/client.py b/openstackclient/volume/client.py index 58cb267e..f4e2decb 100644 --- a/openstackclient/volume/client.py +++ b/openstackclient/volume/client.py @@ -49,29 +49,13 @@ def make_client(instance): http_log_debug = utils.get_effective_log_level() <= logging.DEBUG extensions = [extension.Extension('list_extensions', list_extensions)] + client = volume_client( - username=instance._username, - api_key=instance._password, - project_id=instance._project_name, - auth_url=instance._auth_url, - cacert=instance._cacert, - insecure=instance._insecure, - region_name=instance._region_name, + session=instance.session, extensions=extensions, http_log_debug=http_log_debug, ) - # Populate the Cinder client to skip another auth query to Identity - if instance._url: - # token flow - client.client.management_url = instance._url - else: - # password flow - client.client.management_url = instance.get_endpoint_for_service_type( - API_NAME, region_name=instance._region_name) - client.client.service_catalog = instance._service_catalog - client.client.auth_token = instance._token - return client |
