File tree Expand file tree Collapse file tree
openstackclient/volume/v3 Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -237,3 +237,42 @@ def take_action(self, parsed_args):
237237 return zip (* sorted (volume .items ()))
238238
239239 return self ._take_action (parsed_args )
240+
241+
242+ class DeleteVolume (volume_v2 .DeleteVolume ):
243+ _description = _ ("Delete volume(s)" )
244+
245+ def get_parser (self , prog_name ):
246+ parser = super ().get_parser (prog_name )
247+ return parser
248+
249+ def take_action (self , parsed_args ):
250+ volume_client = self .app .client_manager .volume
251+ result = 0
252+
253+ for i in parsed_args .volumes :
254+ try :
255+ volume_obj = utils .find_resource (volume_client .volumes , i )
256+ if parsed_args .force :
257+ volume_client .volumes .force_delete (volume_obj .id )
258+ else :
259+ volume_client .volumes .delete (
260+ volume_obj .id , cascade = parsed_args .purge
261+ )
262+ except Exception as e :
263+ result += 1
264+ LOG .error (
265+ _ (
266+ "Failed to delete volume with "
267+ "name or ID '%(volume)s': %(e)s"
268+ ),
269+ {'volume' : i , 'e' : e },
270+ )
271+
272+ if result > 0 :
273+ total = len (parsed_args .volumes )
274+ msg = _ ("%(result)s of %(total)s volumes failed " "to delete." ) % {
275+ 'result' : result ,
276+ 'total' : total ,
277+ }
278+ raise exceptions .CommandError (msg )
Original file line number Diff line number Diff line change @@ -766,7 +766,7 @@ openstack.volume.v3 =
766766 consistency_group_snapshot_show = openstackclient.volume.v2.consistency_group_snapshot:ShowConsistencyGroupSnapshot
767767
768768 volume_create = openstackclient.volume.v3.volume:CreateVolume
769- volume_delete = openstackclient.volume.v2 .volume:DeleteVolume
769+ volume_delete = openstackclient.volume.v3 .volume:DeleteVolume
770770 volume_list = openstackclient.volume.v2.volume:ListVolume
771771 volume_migrate = openstackclient.volume.v2.volume:MigrateVolume
772772 volume_set = openstackclient.volume.v2.volume:SetVolume
You can’t perform that action at this time.
0 commit comments