diff --git a/doc/source/command-objects/server.rst b/doc/source/command-objects/server.rst index 4aeef4d056..eb75ef87eb 100644 --- a/doc/source/command-objects/server.rst +++ b/doc/source/command-objects/server.rst @@ -628,17 +628,17 @@ Stop server(s) server suspend -------------- -Suspend server +Suspend server(s) .. program:: server suspend .. code:: bash os server suspend - + [ ...] .. describe:: - Server (name or ID) + Server(s) to suspend (name or ID) server unlock ------------- diff --git a/doc/source/commands.rst b/doc/source/commands.rst index e69699b173..07dcd18d3f 100644 --- a/doc/source/commands.rst +++ b/doc/source/commands.rst @@ -185,7 +185,7 @@ Those actions with an opposite action are noted in parens if applicable. * ``show`` - display detailed information about the specific object * ``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 +* ``suspend`` (``resume``) - stop one or more servers and save to disk freeing memory * ``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 diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py index aa4569c3bb..db62f000a6 100644 --- a/openstackclient/compute/v2/server.py +++ b/openstackclient/compute/v2/server.py @@ -1585,7 +1585,7 @@ class StopServer(command.Command): class SuspendServer(command.Command): - """Suspend server""" + """Suspend server(s)""" log = logging.getLogger(__name__ + '.SuspendServer') @@ -1594,7 +1594,8 @@ class SuspendServer(command.Command): parser.add_argument( 'server', metavar='', - help=_('Server (name or ID)'), + nargs='+', + help=_('Server(s) to suspend (name or ID)'), ) return parser @@ -1602,10 +1603,11 @@ class SuspendServer(command.Command): def take_action(self, parsed_args): compute_client = self.app.client_manager.compute - utils.find_resource( - compute_client.servers, - parsed_args.server, - ).suspend() + for server in parsed_args.server: + utils.find_resource( + compute_client.servers, + server, + ).suspend() class UnlockServer(command.Command):