diff options
Diffstat (limited to 'novaclient/v2/servers.py')
-rw-r--r-- | novaclient/v2/servers.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/novaclient/v2/servers.py b/novaclient/v2/servers.py index 43ed34f2..acef7856 100644 --- a/novaclient/v2/servers.py +++ b/novaclient/v2/servers.py @@ -291,6 +291,7 @@ class Server(base.Resource): """ return self.manager.shelve_offload(self) + @api_versions.wraps("2.0", "2.76") def unshelve(self): """ Unshelve -- Unshelve the server. @@ -299,6 +300,18 @@ class Server(base.Resource): """ return self.manager.unshelve(self) + @api_versions.wraps("2.77") + def unshelve(self, availability_zone=None): + """ + Unshelve -- Unshelve the server. + + :param availability_zone: The specified availability zone name + (Optional) + :returns: An instance of novaclient.base.TupleWithMeta + """ + return self.manager.unshelve(self, + availability_zone=availability_zone) + def diagnostics(self): """Diagnostics -- Retrieve server diagnostics.""" return self.manager.diagnostics(self) @@ -1222,6 +1235,7 @@ class ServerManager(base.BootingManagerWithFind): """ return self._action('shelveOffload', server, None) + @api_versions.wraps("2.0", "2.76") def unshelve(self, server): """ Unshelve the server. @@ -1231,6 +1245,21 @@ class ServerManager(base.BootingManagerWithFind): """ return self._action('unshelve', server, None) + @api_versions.wraps("2.77") + def unshelve(self, server, availability_zone=None): + """ + Unshelve the server. + + :param server: The :class:`Server` (or its ID) to unshelve + :param availability_zone: The specified availability zone name + (Optional) + :returns: An instance of novaclient.base.TupleWithMeta + """ + info = None + if availability_zone: + info = {'availability_zone': availability_zone} + return self._action('unshelve', server, info) + def ips(self, server): """ Return IP Addresses associated with the server. |