Merge "Enable "openstack server lock" command to take multiple servers."

This commit is contained in:
Jenkins 2015-11-16 03:28:01 +00:00 committed by Gerrit Code Review
commit 5dffc9d860
3 changed files with 12 additions and 10 deletions

View File

@ -253,17 +253,17 @@ List servers
server lock server lock
----------- -----------
Lock a server. A non-admin user will not be able to execute actions Lock server(s). A non-admin user will not be able to execute actions
.. program:: server lock .. program:: server lock
.. code:: bash .. code:: bash
os server lock os server lock
<server> <server> [<server> ...]
.. describe:: <server> .. describe:: <server>
Server (name or ID) Server(s) to lock (name or ID)
server migrate server migrate
-------------- --------------

View File

@ -169,7 +169,7 @@ Those actions with an opposite action are noted in parens if applicable.
* ``delete`` (``create``) - delete specific occurrences of the specified objects * ``delete`` (``create``) - delete specific occurrences of the specified objects
* ``issue`` (``revoke``) - issue a token * ``issue`` (``revoke``) - issue a token
* ``list`` - display summary information about multiple objects * ``list`` - display summary information about multiple objects
* ``lock`` (``unlock``) - lock a server so that non-admin user won't be able to execute actions * ``lock`` (``unlock``) - lock one or more servers so that non-admin user won't be able to execute actions
* ``migrate`` - move a server to a different host; ``--live`` performs a * ``migrate`` - move a server to a different host; ``--live`` performs a
live migration if possible live migration if possible
* ``pause`` (``unpause``) - stop one or more servers and leave them in memory * ``pause`` (``unpause``) - stop one or more servers and leave them in memory

View File

@ -846,7 +846,7 @@ class ListServer(lister.Lister):
class LockServer(command.Command): class LockServer(command.Command):
"""Lock a server. A non-admin user will not be able to execute actions""" """Lock server(s). A non-admin user will not be able to execute actions"""
log = logging.getLogger(__name__ + '.LockServer') log = logging.getLogger(__name__ + '.LockServer')
@ -855,7 +855,8 @@ class LockServer(command.Command):
parser.add_argument( parser.add_argument(
'server', 'server',
metavar='<server>', metavar='<server>',
help=_('Server (name or ID)'), nargs='+',
help=_('Server(s) to lock (name or ID)'),
) )
return parser return parser
@ -863,9 +864,10 @@ class LockServer(command.Command):
def take_action(self, parsed_args): def take_action(self, parsed_args):
compute_client = self.app.client_manager.compute compute_client = self.app.client_manager.compute
for server in parsed_args.server:
utils.find_resource( utils.find_resource(
compute_client.servers, compute_client.servers,
parsed_args.server, server,
).lock() ).lock()