summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
authorwanghong <w.wanghong@huawei.com>2014-12-10 11:47:54 +0800
committerwanghong <w.wanghong@huawei.com>2014-12-23 09:31:10 +0800
commit470b7e53a8d7e7ba088b934c49163412c8ee5ed9 (patch)
treea1431caa7a027177a3db0861bc4e924e72b05ba8 /openstackclient/compute
parent3541b0a695af12e31ecae4b4bedbe4235b5c13b4 (diff)
downloadpython-openstackclient-470b7e53a8d7e7ba088b934c49163412c8ee5ed9.tar.gz
add multi-delete support for compute/image/net/volume
This is part1, add support for these objects: compute.server imagev1.image imagev2.image network.network volume.volume volume.backup volume.snapshot Closes-Bug: #1400597 Change-Id: Ice21fee85203a8a55417e0ead8b509b8fd6705c1
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/server.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index 5ab1d5f3..a5d8b0c3 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -511,25 +511,27 @@ class CreateServerImage(show.ShowOne):
class DeleteServer(command.Command):
- """Delete server command"""
+ """Delete server(s)"""
log = logging.getLogger(__name__ + '.DeleteServer')
def get_parser(self, prog_name):
parser = super(DeleteServer, self).get_parser(prog_name)
parser.add_argument(
- 'server',
+ 'servers',
metavar='<server>',
- help=_('Server (name or ID)'),
+ nargs="+",
+ help=_('Server(s) to delete (name or ID)'),
)
return parser
def take_action(self, parsed_args):
self.log.debug('take_action(%s)', parsed_args)
compute_client = self.app.client_manager.compute
- server = utils.find_resource(
- compute_client.servers, parsed_args.server)
- compute_client.servers.delete(server.id)
+ for server in parsed_args.servers:
+ server_obj = utils.find_resource(
+ compute_client.servers, server)
+ compute_client.servers.delete(server_obj.id)
return