summaryrefslogtreecommitdiff
path: root/ceilometerclient/client.py
diff options
context:
space:
mode:
authorRohit Jaiswal <rohit.jaiswal@hp.com>2015-07-31 05:24:39 +0000
committerRohit Jaiswal <rohit.jaiswal@hp.com>2015-07-31 20:35:20 +0000
commit803c59fbc7682dbfbd8f32c191c3e5e45d9fb8ca (patch)
tree75147d12b4afa45f22169de7910268489682aa29 /ceilometerclient/client.py
parent09bfc70de417595e3026b0a0e5258de4f7df56fe (diff)
downloadpython-ceilometerclient-803c59fbc7682dbfbd8f32c191c3e5e45d9fb8ca.tar.gz
tenant_id not required with keystone v3
Ceilometer-client requires tenant_id when authenticating with keystone v3. This fix removes this requirement. Change-Id: I36bf3f7a75713976c56dd95b4fd22da4e64d01df Closes-Bug: 1440463
Diffstat (limited to 'ceilometerclient/client.py')
-rw-r--r--ceilometerclient/client.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/ceilometerclient/client.py b/ceilometerclient/client.py
index 4f9f3da..02194be 100644
--- a/ceilometerclient/client.py
+++ b/ceilometerclient/client.py
@@ -283,8 +283,14 @@ class AuthPlugin(auth.BaseAuthPlugin):
"""
has_token = self.opts.get('token') or self.opts.get('auth_token')
no_auth = has_token and self.opts.get('endpoint')
- has_tenant = self.opts.get('tenant_id') or self.opts.get('tenant_name')
- has_credential = (self.opts.get('username') and has_tenant
+ has_project_domain_or_tenant = (self.opts.get('project_id') or
+ (self.opts.get('project_name') and
+ (self.opts.get('user_domain_name') or
+ self.opts.get('user_domain_id'))) or
+ (self.opts.get('tenant_id') or
+ self.opts.get('tenant_name')))
+ has_credential = (self.opts.get('username')
+ and has_project_domain_or_tenant
and self.opts.get('password')
and self.opts.get('auth_url'))
missing = not (no_auth or has_credential)