diff --git a/doc/source/command-objects/server.rst b/doc/source/command-objects/server.rst index d8b3dbcbaf..4aeef4d056 100644 --- a/doc/source/command-objects/server.rst +++ b/doc/source/command-objects/server.rst @@ -643,17 +643,17 @@ Suspend server server unlock ------------- -Unlock server +Unlock server(s) .. program:: server unlock .. code:: bash os server unlock - + [ ...] .. describe:: - Server (name or ID) + Server(s) to unlock (name or ID) server unpause -------------- diff --git a/doc/source/commands.rst b/doc/source/commands.rst index ca60ab8e76..e69699b173 100644 --- a/doc/source/commands.rst +++ b/doc/source/commands.rst @@ -186,7 +186,7 @@ Those actions with an opposite action are noted in parens if applicable. * ``start`` (``stop``) - start one or more servers * ``stop`` (``start``) - stop one or more servers * ``suspend`` (``resume``) - stop a server and save to disk freeing memory -* ``unlock`` (``lock``) - unlock a server +* ``unlock`` (``lock``) - unlock one or more servers * ``unpause`` (``pause``) - return one or more paused servers to running state * ``unrescue`` (``rescue``) - return a server to normal boot mode * ``unset`` (``set``) - remove an attribute of the object diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py index bd6f5a54fd..aa4569c3bb 100644 --- a/openstackclient/compute/v2/server.py +++ b/openstackclient/compute/v2/server.py @@ -1609,7 +1609,7 @@ class SuspendServer(command.Command): class UnlockServer(command.Command): - """Unlock server""" + """Unlock server(s)""" log = logging.getLogger(__name__ + '.UnlockServer') @@ -1618,7 +1618,8 @@ class UnlockServer(command.Command): parser.add_argument( 'server', metavar='', - help=_('Server (name or ID)'), + nargs='+', + help=_('Server(s) to unlock (name or ID)'), ) return parser @@ -1626,10 +1627,11 @@ class UnlockServer(command.Command): def take_action(self, parsed_args): compute_client = self.app.client_manager.compute - utils.find_resource( - compute_client.servers, - parsed_args.server, - ).unlock() + for server in parsed_args.server: + utils.find_resource( + compute_client.servers, + server, + ).unlock() class UnpauseServer(command.Command):