Adds service_user_id into relation data
This is necessary to avoid collisions between same usernames used service users. Depends-on: I4fbfa8fba84b11c4e30e4db9a0c358db1e8c94f1 Closes-Bug: #2030755 Change-Id: I500fd131cbd6cd5c2b38fdbe81b8b48e50a3e3f7
This commit is contained in:
parent
b4ee292bb6
commit
86a323abfe
|
@ -2159,6 +2159,9 @@ def add_service_to_keystone(relation_id=None, remote_unit=None):
|
||||||
if get_api_version() > 2:
|
if get_api_version() > 2:
|
||||||
service_domain = SERVICE_DOMAIN
|
service_domain = SERVICE_DOMAIN
|
||||||
service_domain_id = manager.resolve_domain_id(SERVICE_DOMAIN)
|
service_domain_id = manager.resolve_domain_id(SERVICE_DOMAIN)
|
||||||
|
|
||||||
|
service_user_id = manager.resolve_user_id(service_username,
|
||||||
|
user_domain=service_domain)
|
||||||
service_tenant = config('service-tenant')
|
service_tenant = config('service-tenant')
|
||||||
service_tenant_id = manager.resolve_tenant_id(service_tenant,
|
service_tenant_id = manager.resolve_tenant_id(service_tenant,
|
||||||
domain=service_domain)
|
domain=service_domain)
|
||||||
|
@ -2185,6 +2188,7 @@ def add_service_to_keystone(relation_id=None, remote_unit=None):
|
||||||
"internal_port": config("service-port"),
|
"internal_port": config("service-port"),
|
||||||
"auth_port": config("admin-port"),
|
"auth_port": config("admin-port"),
|
||||||
"service_username": service_username,
|
"service_username": service_username,
|
||||||
|
"service_user_id": service_user_id,
|
||||||
"service_password": service_password,
|
"service_password": service_password,
|
||||||
"service_domain": service_domain,
|
"service_domain": service_domain,
|
||||||
"service_domain_id": service_domain_id,
|
"service_domain_id": service_domain_id,
|
||||||
|
|
|
@ -465,7 +465,10 @@ class TestKeystoneUtils(CharmTestCase):
|
||||||
mock_keystone = MagicMock()
|
mock_keystone = MagicMock()
|
||||||
mock_keystone.resolve_tenant_id.return_value = 'tenant_id'
|
mock_keystone.resolve_tenant_id.return_value = 'tenant_id'
|
||||||
mock_keystone.resolve_domain_id.return_value = service_domain_id
|
mock_keystone.resolve_domain_id.return_value = service_domain_id
|
||||||
mock_keystone.resolve_user_id.return_value = admin_user_id
|
if test_api_version > 2:
|
||||||
|
mock_keystone.resolve_user_id.return_value = admin_user_id
|
||||||
|
else:
|
||||||
|
mock_keystone.resolve_user_id.return_value = None
|
||||||
KeystoneManager.return_value = mock_keystone
|
KeystoneManager.return_value = mock_keystone
|
||||||
|
|
||||||
self.relation_get.return_value = {'service': 'keystone',
|
self.relation_get.return_value = {'service': 'keystone',
|
||||||
|
@ -506,6 +509,7 @@ class TestKeystoneUtils(CharmTestCase):
|
||||||
'internal_protocol': 'http',
|
'internal_protocol': 'http',
|
||||||
'internal_port': 81,
|
'internal_port': 81,
|
||||||
'service_username': 'keystone',
|
'service_username': 'keystone',
|
||||||
|
'service_user_id': admin_user_id,
|
||||||
'service_password': 'password',
|
'service_password': 'password',
|
||||||
'service_domain': service_domain,
|
'service_domain': service_domain,
|
||||||
'service_domain_id': service_domain_id,
|
'service_domain_id': service_domain_id,
|
||||||
|
|
Loading…
Reference in New Issue