From 9c34bc42da2c4f72e685778f8fe7994bdf686dac Mon Sep 17 00:00:00 2001 From: Liam Young Date: Mon, 25 Nov 2019 17:40:03 +0000 Subject: [PATCH 1/2] Expose model_name option in get_keystone_session_from_relation --- unit_tests/utilities/test_zaza_utilities_openstack.py | 6 ++++-- zaza/openstack/utilities/openstack.py | 8 +++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/unit_tests/utilities/test_zaza_utilities_openstack.py b/unit_tests/utilities/test_zaza_utilities_openstack.py index 4576564..7e9a57d 100644 --- a/unit_tests/utilities/test_zaza_utilities_openstack.py +++ b/unit_tests/utilities/test_zaza_utilities_openstack.py @@ -1108,7 +1108,8 @@ class TestOpenStackUtils(ut_utils.BaseTestCase): self.get_relation_from_unit.assert_called_once_with( 'swift-proxy', 'keystone', - 'identity-service') + 'identity-service', + model_name=None) self.get_keystone_session.assert_called_once_with( { 'OS_AUTH_URL': 'http://10.5.0.61:5000/v3', @@ -1155,7 +1156,8 @@ class TestOpenStackUtils(ut_utils.BaseTestCase): self.get_relation_from_unit.assert_called_once_with( 'swift-proxy', 'keystone', - 'identity-service') + 'identity-service', + model_name=None) self.get_keystone_session.assert_called_once_with( { 'OS_AUTH_URL': 'http://10.5.0.36:5000/v2.0', diff --git a/zaza/openstack/utilities/openstack.py b/zaza/openstack/utilities/openstack.py index cb1b6fd..5e5addc 100644 --- a/zaza/openstack/utilities/openstack.py +++ b/zaza/openstack/utilities/openstack.py @@ -2450,7 +2450,8 @@ def get_keystone_session_from_relation(client_app, identity_app='keystone', relation_name='identity-service', scope='PROJECT', - verify=None): + verify=None, + model_name=None): """Extract credentials information from a relation & return a session. :param client_app: Name of application receiving credentials. @@ -2472,10 +2473,11 @@ def get_keystone_session_from_relation(client_app, relation = juju_utils.get_relation_from_unit( client_app, identity_app, - relation_name) + relation_name, + model_name=model_name) api_version = int(relation.get('api_version', 2)) - creds = get_overcloud_auth() + creds = get_overcloud_auth(model_name=model_name) creds['OS_USERNAME'] = relation['service_username'] creds['OS_PASSWORD'] = relation['service_password'] creds['OS_PROJECT_NAME'] = relation['service_tenant'] From bd903fa32592e2adf1d7620636545f7bfebec46c Mon Sep 17 00:00:00 2001 From: Liam Young Date: Mon, 25 Nov 2019 17:41:29 +0000 Subject: [PATCH 2/2] Add docstring entry --- zaza/openstack/utilities/openstack.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/zaza/openstack/utilities/openstack.py b/zaza/openstack/utilities/openstack.py index 5e5addc..1776296 100644 --- a/zaza/openstack/utilities/openstack.py +++ b/zaza/openstack/utilities/openstack.py @@ -2467,6 +2467,8 @@ def get_keystone_session_from_relation(client_app, False - do not verify, None - defer to requests library to find certs, str - path to a CA cert bundle) + :param model_name: Name of model to query. + :type model_name: str :returns: Keystone session object :rtype: keystoneauth1.session.Session object """