diff options
author | David Stygstra <david.stygstra@gmail.com> | 2015-06-30 09:45:29 -0400 |
---|---|---|
committer | David Stygstra <david.stygstra@gmail.com> | 2015-06-30 09:45:29 -0400 |
commit | 2b9d5945f4709526b0c0aefe0e6411b6dbd9cb1a (patch) | |
tree | 42a048f64c1baabba088294ad9556078ac40bf7c | |
parent | c4880b4b6133d507b76fe0db842a6f22dabb7453 (diff) | |
download | openstack-ansible-modules-2b9d5945f4709526b0c0aefe0e6411b6dbd9cb1a.tar.gz |
Support deletion of Keystone services/endpoints
-rw-r--r-- | keystone_service | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/keystone_service b/keystone_service index aa4302d..69d3997 100644 --- a/keystone_service +++ b/keystone_service @@ -199,12 +199,26 @@ def ensure_endpoint_present(keystone, name, public_url, internal_url, def ensure_service_absent(keystone, name, check_mode): """ Ensure the service is absent""" + try: + service = get_service(keystone, name) + if not check_mode: + keystone.services.delete(service.id) + return True + except KeyError: + # Service doesn't exist, so we're done. + return False - raise NotImplementedError() def ensure_endpoint_absent(keystone, name, check_mode): """ Ensure the service endpoint """ - raise NotImplementedError() + try: + endpoint = get_endpoint(keystone, name) + if not check_mode: + keystone.endpoints.delete(endpoint.id) + return True + except KeyError: + # Endpoint doesn't exist, so we're done. + return False def dispatch(keystone, name, service_type, description, public_url, |