From 7035376978c6664b8107c3cfd958853344ecdef2 Mon Sep 17 00:00:00 2001 From: Monty Taylor Date: Fri, 9 Oct 2015 10:55:35 -0400 Subject: [PATCH] Accept v2 params to v3 service create v2 clouds exist. So do v3 clouds. If the cloud is v3 but the user tries v2 names, just do the right thing. Change-Id: Iaceff4b2e3e6faf3923ae08064c6bddb264df514 --- keystoneclient/v3/services.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/keystoneclient/v3/services.py b/keystoneclient/v3/services.py index d6d4c80db..29c84d217 100644 --- a/keystoneclient/v3/services.py +++ b/keystoneclient/v3/services.py @@ -38,10 +38,12 @@ class ServiceManager(base.CrudManager): key = 'service' @utils.positional(1, enforcement=utils.positional.WARN) - def create(self, name, type, enabled=True, description=None, **kwargs): + def create(self, name, type=None, + enabled=True, description=None, **kwargs): + type_arg = type or kwargs.pop('service_type', None) return super(ServiceManager, self).create( name=name, - type=type, + type=type_arg, description=description, enabled=enabled, **kwargs) @@ -52,22 +54,28 @@ class ServiceManager(base.CrudManager): @utils.positional(enforcement=utils.positional.WARN) def list(self, name=None, type=None, **kwargs): + type_arg = type or kwargs.pop('service_type', None) return super(ServiceManager, self).list( name=name, - type=type, + type=type_arg, **kwargs) @utils.positional(enforcement=utils.positional.WARN) def update(self, service, name=None, type=None, enabled=None, description=None, **kwargs): + type_arg = type or kwargs.pop('service_type', None) return super(ServiceManager, self).update( service_id=base.getid(service), name=name, - type=type, + type=type_arg, description=description, enabled=enabled, **kwargs) - def delete(self, service): + def delete(self, service=None, id=None): + if service: + service_id = base.getid(service) + else: + service_id = id return super(ServiceManager, self).delete( - service_id=base.getid(service)) + service_id=service_id)