summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-06-01 20:07:27 +0000
committerGerrit Code Review <review@openstack.org>2015-06-01 20:07:27 +0000
commit4d57e9f62a6d49fb7114ea718dda166f349d9341 (patch)
tree1d89091f385113f1771806a8e436f65a26bbfed6 /openstackclient/compute
parent40634c3f2cec4c23e2123b3ff5cdc447f26cf977 (diff)
parent224d375ef4120998dc51fbf55f1778d1ccf118a0 (diff)
downloadpython-openstackclient-4d57e9f62a6d49fb7114ea718dda166f349d9341.tar.gz
Merge "Add --wait to server delete"
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/server.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index 41c1b904..5007b072 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -572,6 +572,11 @@ class DeleteServer(command.Command):
nargs="+",
help=_('Server(s) to delete (name or ID)'),
)
+ parser.add_argument(
+ '--wait',
+ action='store_true',
+ help=_('Wait for delete to complete'),
+ )
return parser
def take_action(self, parsed_args):
@@ -581,6 +586,18 @@ class DeleteServer(command.Command):
server_obj = utils.find_resource(
compute_client.servers, server)
compute_client.servers.delete(server_obj.id)
+ if parsed_args.wait:
+ if utils.wait_for_delete(
+ compute_client.servers,
+ server_obj.id,
+ callback=_show_progress,
+ ):
+ sys.stdout.write('\n')
+ else:
+ self.log.error(_('Error deleting server: %s'),
+ server_obj.id)
+ sys.stdout.write(_('\nError deleting server'))
+ raise SystemExit
return