diff options
| author | Dean Troyer <dtroyer@gmail.com> | 2012-05-09 17:15:43 -0500 |
|---|---|---|
| committer | Dean Troyer <dtroyer@gmail.com> | 2012-05-10 13:54:58 -0500 |
| commit | 6fb1a4e496f6860c800f08e68c05b7e95be36c3b (patch) | |
| tree | f109c8da9544b54f59313006f4c219e10bd8ff8f /openstackclient/identity | |
| parent | a7da2b8008c7429eab270aa937f563dfa3353afa (diff) | |
| download | python-openstackclient-6fb1a4e496f6860c800f08e68c05b7e95be36c3b.tar.gz | |
More identity client config
* move auth option checking back to OpenStackShell() to keep the shell-level
interaction at that level; add checking for token flow options
* make identity.client.make_client() configure keystoneclient.v2_0.Client()
properly for both password flow and token flow auth
* eliminated ClientManager.init_token(), set _service_catalog in __init__()
* compute client handles token flow
Change-Id: I42481b5424489387798c4ec6d3e2a723ab1e6067
Diffstat (limited to 'openstackclient/identity')
| -rw-r--r-- | openstackclient/identity/client.py | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/openstackclient/identity/client.py b/openstackclient/identity/client.py index be44098e..2d823d2b 100644 --- a/openstackclient/identity/client.py +++ b/openstackclient/identity/client.py @@ -8,13 +8,20 @@ LOG = logging.getLogger(__name__) def make_client(instance): """Returns an identity service client. """ - LOG.debug('instantiating identity client') - client = identity_client.Client( - username=instance._username, - password=instance._password, - tenant_name=instance._tenant_name, - tenant_id=instance._tenant_id, - auth_url=instance._auth_url, - region_name=instance._region_name, - ) + if instance._url: + LOG.debug('instantiating identity client: token flow') + client = identity_client.Client( + endpoint=instance._url, + token=instance._token, + ) + else: + LOG.debug('instantiating identity client: password flow') + client = identity_client.Client( + username=instance._username, + password=instance._password, + tenant_name=instance._tenant_name, + tenant_id=instance._tenant_id, + auth_url=instance._auth_url, + region_name=instance._region_name, + ) return client |
