summaryrefslogtreecommitdiff
path: root/openstackclient/compute/v2/server.py
diff options
context:
space:
mode:
authorRui Chen <chenrui.momo@gmail.com>2016-05-28 18:55:50 +0800
committerRui Chen <chenrui.momo@gmail.com>2016-05-28 18:55:50 +0800
commit1a7284f63ad13f41c6ff4295d69f065310242524 (patch)
tree96688b8b42c6ec885ae791f8cdb1aa5b02ba2af1 /openstackclient/compute/v2/server.py
parent7247707d343c931ab18830f6475c3e0c49ea2a74 (diff)
downloadpython-openstackclient-1a7284f63ad13f41c6ff4295d69f065310242524.tar.gz
Support to set server state
When a server is unexpected state, OSC don't support reset the server to active or error state, that's supported by novaclient, and it's an important command for operators, the patch implement this function. Change-Id: I3e7800feb192832b0719ef9a353945beb6bfd509 Implements: blueprint server-reset-state
Diffstat (limited to 'openstackclient/compute/v2/server.py')
-rw-r--r--openstackclient/compute/v2/server.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index 781ccb1b..2312575a 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -1370,6 +1370,12 @@ class SetServer(command.Command):
help=_('Property to add/change for this server '
'(repeat option to set multiple properties)'),
)
+ parser.add_argument(
+ '--state',
+ metavar='<state>',
+ choices=['active', 'error'],
+ help=_('New server state (valid value: active, error)'),
+ )
return parser
def take_action(self, parsed_args):
@@ -1389,6 +1395,9 @@ class SetServer(command.Command):
parsed_args.property,
)
+ if parsed_args.state:
+ server.reset_state(state=parsed_args.state)
+
if parsed_args.root_password:
p1 = getpass.getpass(_('New password: '))
p2 = getpass.getpass(_('Retype new password: '))