Skip to content

Commit 1f6104c

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "compute: Rename 'server migrate (confirm|revert)'"
2 parents 855dc79 + a52beac commit 1f6104c

4 files changed

Lines changed: 198 additions & 4 deletions

File tree

openstackclient/compute/v2/server.py

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3559,10 +3559,27 @@ def take_action(self, parsed_args):
35593559
server.confirm_resize()
35603560

35613561

3562+
# TODO(stephenfin): Remove in OSC 7.0
35623563
class MigrateConfirm(ResizeConfirm):
3563-
_description = _("""Confirm server migrate.
3564+
_description = _("""DEPRECATED: Confirm server migration.
35643565
3565-
Confirm (verify) success of migrate operation and release the old server.""")
3566+
Use 'server migration confirm' instead.""")
3567+
3568+
def take_action(self, parsed_args):
3569+
msg = _(
3570+
"The 'server migrate confirm' command has been deprecated in "
3571+
"favour of the 'server migration confirm' command."
3572+
)
3573+
self.log.warning(msg)
3574+
3575+
super().take_action(parsed_args)
3576+
3577+
3578+
class ConfirmMigration(ResizeConfirm):
3579+
_description = _("""Confirm server migration.
3580+
3581+
Confirm (verify) success of the migration operation and release the old
3582+
server.""")
35663583

35673584

35683585
class ResizeRevert(command.Command):
@@ -3590,10 +3607,26 @@ def take_action(self, parsed_args):
35903607
server.revert_resize()
35913608

35923609

3610+
# TODO(stephenfin): Remove in OSC 7.0
35933611
class MigrateRevert(ResizeRevert):
3594-
_description = _("""Revert server migrate.
3612+
_description = _("""Revert server migration.
3613+
3614+
Use 'server migration revert' instead.""")
3615+
3616+
def take_action(self, parsed_args):
3617+
msg = _(
3618+
"The 'server migrate revert' command has been deprecated in "
3619+
"favour of the 'server migration revert' command."
3620+
)
3621+
self.log.warning(msg)
3622+
3623+
super().take_action(parsed_args)
3624+
3625+
3626+
class RevertMigration(ResizeRevert):
3627+
_description = _("""Revert server migration.
35953628
3596-
Revert the migrate operation. Release the new server and restart the old
3629+
Revert the migration operation. Release the new server and restart the old
35973630
one.""")
35983631

35993632

openstackclient/tests/unit/compute/v2/test_server.py

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6401,6 +6401,82 @@ def test_resize_confirm(self):
64016401
self.server.confirm_resize.assert_called_with()
64026402

64036403

6404+
# TODO(stephenfin): Remove in OSC 7.0
6405+
class TestServerMigrateConfirm(TestServer):
6406+
6407+
def setUp(self):
6408+
super().setUp()
6409+
6410+
methods = {
6411+
'confirm_resize': None,
6412+
}
6413+
self.server = compute_fakes.FakeServer.create_one_server(
6414+
methods=methods)
6415+
6416+
# This is the return value for utils.find_resource()
6417+
self.servers_mock.get.return_value = self.server
6418+
6419+
self.servers_mock.confirm_resize.return_value = None
6420+
6421+
# Get the command object to test
6422+
self.cmd = server.MigrateConfirm(self.app, None)
6423+
6424+
def test_migrate_confirm(self):
6425+
arglist = [
6426+
self.server.id,
6427+
]
6428+
verifylist = [
6429+
('server', self.server.id),
6430+
]
6431+
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
6432+
6433+
with mock.patch.object(self.cmd.log, 'warning') as mock_warning:
6434+
self.cmd.take_action(parsed_args)
6435+
6436+
self.servers_mock.get.assert_called_with(self.server.id)
6437+
self.server.confirm_resize.assert_called_with()
6438+
6439+
mock_warning.assert_called_once()
6440+
self.assertIn(
6441+
"The 'server migrate confirm' command has been deprecated",
6442+
str(mock_warning.call_args[0][0])
6443+
)
6444+
6445+
6446+
class TestServerConfirmMigration(TestServerResizeConfirm):
6447+
6448+
def setUp(self):
6449+
super().setUp()
6450+
6451+
methods = {
6452+
'confirm_resize': None,
6453+
}
6454+
self.server = compute_fakes.FakeServer.create_one_server(
6455+
methods=methods)
6456+
6457+
# This is the return value for utils.find_resource()
6458+
self.servers_mock.get.return_value = self.server
6459+
6460+
self.servers_mock.confirm_resize.return_value = None
6461+
6462+
# Get the command object to test
6463+
self.cmd = server.ConfirmMigration(self.app, None)
6464+
6465+
def test_migration_confirm(self):
6466+
arglist = [
6467+
self.server.id,
6468+
]
6469+
verifylist = [
6470+
('server', self.server.id),
6471+
]
6472+
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
6473+
6474+
self.cmd.take_action(parsed_args)
6475+
6476+
self.servers_mock.get.assert_called_with(self.server.id)
6477+
self.server.confirm_resize.assert_called_with()
6478+
6479+
64046480
class TestServerResizeRevert(TestServer):
64056481

64066482
def setUp(self):
@@ -6435,6 +6511,82 @@ def test_resize_revert(self):
64356511
self.server.revert_resize.assert_called_with()
64366512

64376513

6514+
# TODO(stephenfin): Remove in OSC 7.0
6515+
class TestServerMigrateRevert(TestServer):
6516+
6517+
def setUp(self):
6518+
super().setUp()
6519+
6520+
methods = {
6521+
'revert_resize': None,
6522+
}
6523+
self.server = compute_fakes.FakeServer.create_one_server(
6524+
methods=methods)
6525+
6526+
# This is the return value for utils.find_resource()
6527+
self.servers_mock.get.return_value = self.server
6528+
6529+
self.servers_mock.revert_resize.return_value = None
6530+
6531+
# Get the command object to test
6532+
self.cmd = server.MigrateRevert(self.app, None)
6533+
6534+
def test_migrate_revert(self):
6535+
arglist = [
6536+
self.server.id,
6537+
]
6538+
verifylist = [
6539+
('server', self.server.id),
6540+
]
6541+
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
6542+
6543+
with mock.patch.object(self.cmd.log, 'warning') as mock_warning:
6544+
self.cmd.take_action(parsed_args)
6545+
6546+
self.servers_mock.get.assert_called_with(self.server.id)
6547+
self.server.revert_resize.assert_called_with()
6548+
6549+
mock_warning.assert_called_once()
6550+
self.assertIn(
6551+
"The 'server migrate revert' command has been deprecated",
6552+
str(mock_warning.call_args[0][0])
6553+
)
6554+
6555+
6556+
class TestServerRevertMigration(TestServer):
6557+
6558+
def setUp(self):
6559+
super().setUp()
6560+
6561+
methods = {
6562+
'revert_resize': None,
6563+
}
6564+
self.server = compute_fakes.FakeServer.create_one_server(
6565+
methods=methods)
6566+
6567+
# This is the return value for utils.find_resource()
6568+
self.servers_mock.get.return_value = self.server
6569+
6570+
self.servers_mock.revert_resize.return_value = None
6571+
6572+
# Get the command object to test
6573+
self.cmd = server.RevertMigration(self.app, None)
6574+
6575+
def test_migration_revert(self):
6576+
arglist = [
6577+
self.server.id,
6578+
]
6579+
verifylist = [
6580+
('server', self.server.id),
6581+
]
6582+
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
6583+
6584+
self.cmd.take_action(parsed_args)
6585+
6586+
self.servers_mock.get.assert_called_with(self.server.id)
6587+
self.server.revert_resize.assert_called_with()
6588+
6589+
64386590
class TestServerRestore(TestServer):
64396591

64406592
def setUp(self):
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
upgrade:
3+
- |
4+
The ``server migrate confirm`` and ``server migrate revert`` commands,
5+
introduced in OSC 5.0, have been deprecated in favour of
6+
``server migration confirm`` and ``server migration revert`` respectively.
7+
The deprecated commands will be removed in a future major version.

setup.cfg

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,10 @@ openstack.compute.v2 =
111111
server_migrate_confirm = openstackclient.compute.v2.server:MigrateConfirm
112112
server_migrate_revert = openstackclient.compute.v2.server:MigrateRevert
113113
server_migration_abort = openstackclient.compute.v2.server:AbortMigration
114+
server_migration_confirm = openstackclient.compute.v2.server:ConfirmMigration
114115
server_migration_force_complete = openstackclient.compute.v2.server:ForceCompleteMigration
115116
server_migration_list = openstackclient.compute.v2.server:ListMigration
117+
server_migration_revert = openstackclient.compute.v2.server:RevertMigration
116118
server_migration_show = openstackclient.compute.v2.server:ShowMigration
117119
server_pause = openstackclient.compute.v2.server:PauseServer
118120
server_reboot = openstackclient.compute.v2.server:RebootServer

0 commit comments

Comments
 (0)