diff options
| author | Jenkins <jenkins@review.openstack.org> | 2016-08-30 03:18:14 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2016-08-30 03:18:14 +0000 |
| commit | 6c4d06ed8f48a4ab8de95dec91fca7783849b8b9 (patch) | |
| tree | 0c7899774b5ec76cf1ae1fce56c33af721f78cd2 | |
| parent | 654a8ffbe226f23d2995ab061bc2b5ae365c979d (diff) | |
| parent | cae30a913b3007bb2fd65bcf39e5ddfdcb374adc (diff) | |
| download | kolla-6c4d06ed8f48a4ab8de95dec91fca7783849b8b9.tar.gz kolla-6c4d06ed8f48a4ab8de95dec91fca7783849b8b9.zip | |
Merge "Make the kolla_keystone_service can update fields"
| -rw-r--r-- | docker/kolla-toolbox/kolla_keystone_service.py | 26 |
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, |
