aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey Zhang <jeffrey.zhang@99cloud.net>2016-07-28 22:22:41 +0800
committerJeffrey Zhang <jeffrey.zhang@99cloud.net>2016-08-07 18:05:57 +0800
commitcae30a913b3007bb2fd65bcf39e5ddfdcb374adc (patch)
treef35521bce0958c8694fb806fa0446be959efa9d8
parentb6ee58fcdf07c5ce7f2eef539d5ba106b1a3bfa1 (diff)
downloadkolla-cae30a913b3007bb2fd65bcf39e5ddfdcb374adc.tar.gz
kolla-cae30a913b3007bb2fd65bcf39e5ddfdcb374adc.zip
Make the kolla_keystone_service can update fields
Make the kolla_keystone_service can update the following fields * service.name * service.description * endpoint.url TrivialFix Change-Id: If239a518b0217cfc105388ae5e298a8904ac2af5
-rw-r--r--docker/kolla-toolbox/kolla_keystone_service.py26
1 files changed, 19 insertions, 7 deletions
diff --git a/docker/kolla-toolbox/kolla_keystone_service.py b/docker/kolla-toolbox/kolla_keystone_service.py
index 9559c3dbc..6dd2a1b25 100644
--- a/docker/kolla-toolbox/kolla_keystone_service.py
+++ b/docker/kolla-toolbox/kolla_keystone_service.py
@@ -55,19 +55,31 @@ def main():
for _service in cloud.keystone_client.services.list():
if _service.type == service_type:
service = _service
-
- if service is not None:
- for _endpoint in cloud.keystone_client.endpoints.list():
- if _endpoint.service_id == service.id and \
- _endpoint.interface == interface:
- endpoint = _endpoint
+ if service.name != service_name or \
+ service.description != description:
+ changed = True
+ cloud.keystone_client.services.update(
+ service,
+ name=service_name,
+ description=description)
+ break
else:
+ changed = True
service = cloud.keystone_client.services.create(
name=service_name,
service_type=service_type,
description=description)
- if endpoint is None:
+ for _endpoint in cloud.keystone_client.endpoints.list():
+ if _endpoint.service_id == service.id and \
+ _endpoint.interface == interface:
+ endpoint = _endpoint
+ if endpoint.url != url:
+ changed = True
+ cloud.keystone_client.endpoints.update(
+ endpoint, url=url)
+ break
+ else:
changed = True
cloud.keystone_client.endpoints.create(
service=service.id,