Missing client version 3.0 support for "delete_metadata" method

Attempting to call the "delete_metadata" method with a client
at version 3.0 gives versioning error.

closes bug: 1659670

Change-Id: I839d405f02bcb6cb6bf6ed91dba972809b9916f7
This commit is contained in:
Justin A Wilson 2016-09-29 08:10:50 -07:00
parent 4c61c6556b
commit 6e2253eabf
1 changed files with 16 additions and 1 deletions

View File

@ -14,7 +14,7 @@
# under the License.
"""Volume interface (v3 extension)."""
from cinderclient.apiclient import base as common_base
from cinderclient import api_versions
from cinderclient import base
from cinderclient.v2 import volumes
@ -109,6 +109,21 @@ class VolumeManager(volumes.VolumeManager):
return self._create('/volumes', body, 'volume')
@api_versions.wraps("3.0")
def delete_metadata(self, volume, keys):
"""Delete specified keys from volumes metadata.
:param volume: The :class:`Volume`.
:param keys: A list of keys to be removed.
"""
response_list = []
for k in keys:
resp, body = self._delete("/volumes/%s/metadata/%s" %
(base.getid(volume), k))
response_list.append(resp)
return common_base.ListWithMeta([], response_list)
@api_versions.wraps("3.15")
def delete_metadata(self, volume, keys):
"""Delete specified keys from volumes metadata.