summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openstackclient/compute/v2/server.py22
-rw-r--r--openstackclient/tests/unit/compute/v2/test_server.py24
-rw-r--r--releasenotes/notes/migrate-server-pause-unpause-to-sdk-d74ec8536b764af6.yaml5
3 files changed, 36 insertions, 15 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index be14074b..5789de41 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -3148,12 +3148,13 @@ class PauseServer(command.Command):
return parser
def take_action(self, parsed_args):
- compute_client = self.app.client_manager.compute
+ compute_client = self.app.client_manager.sdk_connection.compute
for server in parsed_args.server:
- utils.find_resource(
- compute_client.servers,
- server
- ).pause()
+ server_id = compute_client.find_server(
+ server,
+ ignore_missing=False,
+ ).id
+ compute_client.pause_server(server_id)
class RebootServer(command.Command):
@@ -4692,7 +4693,6 @@ class UnlockServer(command.Command):
return parser
def take_action(self, parsed_args):
-
compute_client = self.app.client_manager.compute
for server in parsed_args.server:
utils.find_resource(
@@ -4715,13 +4715,13 @@ class UnpauseServer(command.Command):
return parser
def take_action(self, parsed_args):
-
- compute_client = self.app.client_manager.compute
+ compute_client = self.app.client_manager.sdk_connection.compute
for server in parsed_args.server:
- utils.find_resource(
- compute_client.servers,
+ server_id = compute_client.find_server(
server,
- ).unpause()
+ ignore_missing=False,
+ ).id
+ compute_client.unpause_server(server_id)
class UnrescueServer(command.Command):
diff --git a/openstackclient/tests/unit/compute/v2/test_server.py b/openstackclient/tests/unit/compute/v2/test_server.py
index 10ea07ad..435ddb47 100644
--- a/openstackclient/tests/unit/compute/v2/test_server.py
+++ b/openstackclient/tests/unit/compute/v2/test_server.py
@@ -192,6 +192,22 @@ class TestServer(compute_fakes.TestComputev2):
method.assert_called_with()
self.assertIsNone(result)
+ def run_method_with_sdk_servers(self, method_name, server_count):
+ servers = self.setup_sdk_servers_mock(count=server_count)
+
+ arglist = [s.id for s in servers]
+ verifylist = [
+ ('server', arglist),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ result = self.cmd.take_action(parsed_args)
+
+ calls = [call(s.id) for s in servers]
+ method = getattr(self.sdk_client, method_name)
+ method.assert_has_calls(calls)
+ self.assertIsNone(result)
+
class TestServerAddFixedIP(TestServer):
@@ -6062,10 +6078,10 @@ class TestServerPause(TestServer):
}
def test_server_pause_one_server(self):
- self.run_method_with_servers('pause', 1)
+ self.run_method_with_sdk_servers('pause_server', 1)
def test_server_pause_multi_servers(self):
- self.run_method_with_servers('pause', 3)
+ self.run_method_with_sdk_servers('pause_server', 3)
class TestServerRebuild(TestServer):
@@ -8308,10 +8324,10 @@ class TestServerUnpause(TestServer):
}
def test_server_unpause_one_server(self):
- self.run_method_with_servers('unpause', 1)
+ self.run_method_with_sdk_servers('unpause_server', 1)
def test_server_unpause_multi_servers(self):
- self.run_method_with_servers('unpause', 3)
+ self.run_method_with_sdk_servers('unpause_server', 3)
class TestServerUnset(TestServer):
diff --git a/releasenotes/notes/migrate-server-pause-unpause-to-sdk-d74ec8536b764af6.yaml b/releasenotes/notes/migrate-server-pause-unpause-to-sdk-d74ec8536b764af6.yaml
new file mode 100644
index 00000000..e2d40034
--- /dev/null
+++ b/releasenotes/notes/migrate-server-pause-unpause-to-sdk-d74ec8536b764af6.yaml
@@ -0,0 +1,5 @@
+---
+features:
+ - |
+ Migrate ``server pause`` and ``server unpause`` commands from novaclient
+ to sdk.