summaryrefslogtreecommitdiff
path: root/ceilometerclient/client.py
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-01-16 17:41:29 +0000
committerGerrit Code Review <review@openstack.org>2015-01-16 17:41:29 +0000
commitb8d483899d4349dd80af7dfd13f1a93880d75e36 (patch)
tree5f8f4957b3ec79c2a99eae10fc501f6cf4063fe7 /ceilometerclient/client.py
parent166eebfbc3b4f633ad11f566c9068a5e2bc6d633 (diff)
parent4d3651dd898cba1c79cf31476ed7c9b181369b2c (diff)
downloadpython-ceilometerclient-b8d483899d4349dd80af7dfd13f1a93880d75e36.tar.gz
Merge "Fix improper parameter setup for cacert and client certs"
Diffstat (limited to 'ceilometerclient/client.py')
-rw-r--r--ceilometerclient/client.py26
1 files changed, 25 insertions, 1 deletions
diff --git a/ceilometerclient/client.py b/ceilometerclient/client.py
index a0fbae2..9ee3742 100644
--- a/ceilometerclient/client.py
+++ b/ceilometerclient/client.py
@@ -222,6 +222,28 @@ def Client(version, *args, **kwargs):
return client_class(*args, **kwargs)
+def _adjust_params(kwargs):
+ timeout = kwargs.get('timeout')
+ if timeout is not None:
+ timeout = int(timeout)
+ if timeout <= 0:
+ timeout = None
+
+ insecure = strutils.bool_from_string(kwargs.get('insecure'))
+ verify = kwargs.get('verify')
+ if verify is None:
+ if insecure:
+ verify = False
+ else:
+ verify = kwargs.get('cacert') or True
+
+ cert = kwargs.get('cert_file')
+ key = kwargs.get('key_file')
+ if cert and key:
+ cert = cert, key
+ return {'verify': verify, 'cert': cert, 'timeout': timeout}
+
+
def get_client(version, **kwargs):
"""Get an authenticated client, based on the credentials
in the keyword args.
@@ -274,6 +296,8 @@ def get_client(version, **kwargs):
}
cli_kwargs.update(kwargs)
+ cli_kwargs.update(_adjust_params(cli_kwargs))
+
return Client(version, endpoint, **cli_kwargs)
@@ -283,7 +307,7 @@ def get_auth_plugin(endpoint, **kwargs):
service_type=kwargs.get('service_type'),
token=kwargs.get('token'),
endpoint_type=kwargs.get('endpoint_type'),
- cacert=kwargs.get('ca_file'),
+ cacert=kwargs.get('cacert'),
tenant_id=kwargs.get('project_id') or kwargs.get('tenant_id'),
endpoint=endpoint,
username=kwargs.get('username'),