summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
authorjichenjc <jichenjc@cn.ibm.com>2016-02-20 06:32:13 +0800
committerjichenjc <jichenjc@cn.ibm.com>2016-02-23 13:43:37 +0800
commit6902a288f8e403cfa143e5c8946ad39bcb2dc396 (patch)
treec8a87d95314ef551743fe27cc10979e6a25e300f /openstackclient/compute
parent43957d602b70ac718f0eab0fa30be5a4f20a5233 (diff)
downloadpython-openstackclient-6902a288f8e403cfa143e5c8946ad39bcb2dc396.tar.gz
[compute] Support restore server
Server in soft-delete state can be restored, add this command. Change-Id: Id9d7246f89ae65273505f36dcb664996534ae986
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/server.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index 4cb94822..7088dd4c 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -1273,6 +1273,28 @@ class ResizeServer(command.Command):
compute_client.servers.revert_resize(server)
+class RestoreServer(command.Command):
+ """Restore server(s)"""
+
+ def get_parser(self, prog_name):
+ parser = super(RestoreServer, self).get_parser(prog_name)
+ parser.add_argument(
+ 'server',
+ metavar='<server>',
+ nargs='+',
+ help=_('Server(s) to restore (name or ID)'),
+ )
+ return parser
+
+ def take_action(self, parsed_args):
+ compute_client = self.app.client_manager.compute
+ for server in parsed_args.server:
+ utils.find_resource(
+ compute_client.servers,
+ server
+ ).restore()
+
+
class ResumeServer(command.Command):
"""Resume server(s)"""