summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2023-02-21 13:28:47 +0000
committerGerrit Code Review <review@openstack.org>2023-02-21 13:28:47 +0000
commit861e1a8eee936b288efb0e1b0d90fcd6f9169d63 (patch)
tree343b17971fd480f081396b1bd04d8c74c56a74e3
parent878676785115a787094f77151476b9e69b244f6b (diff)
parentd1c1c36af15d8cfc43b26b239324b48b0924b66e (diff)
downloadpython-openstackclient-861e1a8eee936b288efb0e1b0d90fcd6f9169d63.tar.gz
Merge "Finish switching server migration to sdk"
-rw-r--r--openstackclient/compute/v2/server_migration.py82
-rw-r--r--openstackclient/tests/unit/compute/v2/fakes.py95
-rw-r--r--openstackclient/tests/unit/compute/v2/test_server_migration.py182
-rw-r--r--releasenotes/notes/switch-server-migration-show-to-sdk-4adb88a0f1f03f3b.yaml3
4 files changed, 196 insertions, 166 deletions
diff --git a/openstackclient/compute/v2/server_migration.py b/openstackclient/compute/v2/server_migration.py
index 016d15d7..91575c1e 100644
--- a/openstackclient/compute/v2/server_migration.py
+++ b/openstackclient/compute/v2/server_migration.py
@@ -14,7 +14,6 @@
import uuid
-from novaclient import api_versions
from openstack import utils as sdk_utils
from osc_lib.command import command
from osc_lib import exceptions
@@ -256,7 +255,7 @@ class ListMigration(command.Lister):
def _get_migration_by_uuid(compute_client, server_id, migration_uuid):
- for migration in compute_client.server_migrations.list(server_id):
+ for migration in compute_client.server_migrations(server_id):
if migration.uuid == migration_uuid:
return migration
break
@@ -290,9 +289,9 @@ class ShowMigration(command.ShowOne):
return parser
def take_action(self, parsed_args):
- compute_client = self.app.client_manager.compute
+ compute_client = self.app.client_manager.sdk_connection.compute
- if compute_client.api_version < api_versions.APIVersion('2.24'):
+ if not sdk_utils.supports_microversion(compute_client, '2.24'):
msg = _(
'--os-compute-api-version 2.24 or greater is required to '
'support the server migration show command'
@@ -308,16 +307,16 @@ class ShowMigration(command.ShowOne):
)
raise exceptions.CommandError(msg)
- if compute_client.api_version < api_versions.APIVersion('2.59'):
+ if not sdk_utils.supports_microversion(compute_client, '2.59'):
msg = _(
'--os-compute-api-version 2.59 or greater is required to '
'retrieve server migrations by UUID'
)
raise exceptions.CommandError(msg)
- server = utils.find_resource(
- compute_client.servers,
+ server = compute_client.find_server(
parsed_args.server,
+ ignore_missing=False,
)
# the nova API doesn't currently allow retrieval by UUID but it's a
@@ -328,11 +327,13 @@ class ShowMigration(command.ShowOne):
compute_client, server.id, parsed_args.migration,
)
else:
- server_migration = compute_client.server_migrations.get(
- server.id, parsed_args.migration,
+ server_migration = compute_client.get_server_migration(
+ server.id,
+ parsed_args.migration,
+ ignore_missing=False,
)
- columns = (
+ column_headers = (
'ID',
'Server UUID',
'Status',
@@ -351,14 +352,35 @@ class ShowMigration(command.ShowOne):
'Updated At',
)
- if compute_client.api_version >= api_versions.APIVersion('2.59'):
- columns += ('UUID',)
+ columns = (
+ 'id',
+ 'server_id',
+ 'status',
+ 'source_compute',
+ 'source_node',
+ 'dest_compute',
+ 'dest_host',
+ 'dest_node',
+ 'memory_total_bytes',
+ 'memory_processed_bytes',
+ 'memory_remaining_bytes',
+ 'disk_total_bytes',
+ 'disk_processed_bytes',
+ 'disk_remaining_bytes',
+ 'created_at',
+ 'updated_at',
+ )
- if compute_client.api_version >= api_versions.APIVersion('2.80'):
- columns += ('User ID', 'Project ID')
+ if sdk_utils.supports_microversion(compute_client, '2.59'):
+ column_headers += ('UUID',)
+ columns += ('uuid',)
+
+ if sdk_utils.supports_microversion(compute_client, '2.80'):
+ column_headers += ('User ID', 'Project ID')
+ columns += ('user_id', 'project_id')
data = utils.get_item_properties(server_migration, columns)
- return columns, data
+ return column_headers, data
class AbortMigration(command.Command):
@@ -382,9 +404,9 @@ class AbortMigration(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
- if compute_client.api_version < api_versions.APIVersion('2.24'):
+ if not sdk_utils.supports_microversion(compute_client, '2.24'):
msg = _(
'--os-compute-api-version 2.24 or greater is required to '
'support the server migration abort command'
@@ -400,16 +422,16 @@ class AbortMigration(command.Command):
)
raise exceptions.CommandError(msg)
- if compute_client.api_version < api_versions.APIVersion('2.59'):
+ if not sdk_utils.supports_microversion(compute_client, '2.59'):
msg = _(
'--os-compute-api-version 2.59 or greater is required to '
'abort server migrations by UUID'
)
raise exceptions.CommandError(msg)
- server = utils.find_resource(
- compute_client.servers,
+ server = compute_client.find_server(
parsed_args.server,
+ ignore_missing=False,
)
# the nova API doesn't currently allow retrieval by UUID but it's a
@@ -421,8 +443,10 @@ class AbortMigration(command.Command):
compute_client, server.id, parsed_args.migration,
).id
- compute_client.server_migrations.live_migration_abort(
- server.id, migration_id,
+ compute_client.abort_server_migration(
+ migration_id,
+ server.id,
+ ignore_missing=False,
)
@@ -447,9 +471,9 @@ class ForceCompleteMigration(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
- if compute_client.api_version < api_versions.APIVersion('2.22'):
+ if not sdk_utils.supports_microversion(compute_client, '2.22'):
msg = _(
'--os-compute-api-version 2.22 or greater is required to '
'support the server migration force complete command'
@@ -465,16 +489,16 @@ class ForceCompleteMigration(command.Command):
)
raise exceptions.CommandError(msg)
- if compute_client.api_version < api_versions.APIVersion('2.59'):
+ if not sdk_utils.supports_microversion(compute_client, '2.59'):
msg = _(
'--os-compute-api-version 2.59 or greater is required to '
'abort server migrations by UUID'
)
raise exceptions.CommandError(msg)
- server = utils.find_resource(
- compute_client.servers,
+ server = compute_client.find_server(
parsed_args.server,
+ ignore_missing=False,
)
# the nova API doesn't currently allow retrieval by UUID but it's a
@@ -486,6 +510,6 @@ class ForceCompleteMigration(command.Command):
compute_client, server.id, parsed_args.migration,
).id
- compute_client.server_migrations.live_migrate_force_complete(
- server.id, migration_id,
+ compute_client.force_complete_server_migration(
+ migration_id, server.id
)
diff --git a/openstackclient/tests/unit/compute/v2/fakes.py b/openstackclient/tests/unit/compute/v2/fakes.py
index b6da7acf..f7f07509 100644
--- a/openstackclient/tests/unit/compute/v2/fakes.py
+++ b/openstackclient/tests/unit/compute/v2/fakes.py
@@ -25,6 +25,7 @@ from openstack.compute.v2 import migration as _migration
from openstack.compute.v2 import server as _server
from openstack.compute.v2 import server_group as _server_group
from openstack.compute.v2 import server_interface as _server_interface
+from openstack.compute.v2 import server_migration as _server_migration
from openstack.compute.v2 import service
from openstack.compute.v2 import volume_attachment
@@ -1483,57 +1484,61 @@ def create_migrations(attrs=None, count=2):
return migrations
-class FakeServerMigration(object):
- """Fake one or more server migrations."""
+def create_one_server_migration(attrs=None):
+ """Create a fake server migration.
- @staticmethod
- def create_one_server_migration(attrs=None, methods=None):
- """Create a fake server migration.
+ :param dict attrs: A dictionary with all attributes
+ :return A fake openstack.compute.v2.server_migration.ServerMigration object
+ """
+ attrs = attrs or {}
- :param dict attrs:
- A dictionary with all attributes
- :param dict methods:
- A dictionary with all methods
- :return:
- A FakeResource object, with id, type, and so on
- """
- attrs = attrs or {}
- methods = methods or {}
+ # Set default attributes.
- # Set default attributes.
+ migration_info = {
+ "created_at": "2016-01-29T13:42:02.000000",
+ "dest_compute": "compute2",
+ "dest_host": "1.2.3.4",
+ "dest_node": "node2",
+ "id": random.randint(1, 999),
+ "server_uuid": uuid.uuid4().hex,
+ "source_compute": "compute1",
+ "source_node": "node1",
+ "status": "running",
+ "memory_total_bytes": random.randint(1, 99999),
+ "memory_processed_bytes": random.randint(1, 99999),
+ "memory_remaining_bytes": random.randint(1, 99999),
+ "disk_total_bytes": random.randint(1, 99999),
+ "disk_processed_bytes": random.randint(1, 99999),
+ "disk_remaining_bytes": random.randint(1, 99999),
+ "updated_at": "2016-01-29T13:42:02.000000",
+ # added in 2.59
+ "uuid": uuid.uuid4().hex,
+ # added in 2.80
+ "user_id": uuid.uuid4().hex,
+ "project_id": uuid.uuid4().hex,
+ }
- migration_info = {
- "created_at": "2016-01-29T13:42:02.000000",
- "dest_compute": "compute2",
- "dest_host": "1.2.3.4",
- "dest_node": "node2",
- "id": random.randint(1, 999),
- "server_uuid": uuid.uuid4().hex,
- "source_compute": "compute1",
- "source_node": "node1",
- "status": "running",
- "memory_total_bytes": random.randint(1, 99999),
- "memory_processed_bytes": random.randint(1, 99999),
- "memory_remaining_bytes": random.randint(1, 99999),
- "disk_total_bytes": random.randint(1, 99999),
- "disk_processed_bytes": random.randint(1, 99999),
- "disk_remaining_bytes": random.randint(1, 99999),
- "updated_at": "2016-01-29T13:42:02.000000",
- # added in 2.59
- "uuid": uuid.uuid4().hex,
- # added in 2.80
- "user_id": uuid.uuid4().hex,
- "project_id": uuid.uuid4().hex,
- }
+ # Overwrite default attributes.
+ migration_info.update(attrs)
- # Overwrite default attributes.
- migration_info.update(attrs)
+ migration = _server_migration.ServerMigration(**migration_info)
+ return migration
- migration = fakes.FakeResource(
- info=copy.deepcopy(migration_info),
- methods=methods,
- loaded=True)
- return migration
+
+def create_server_migrations(attrs=None, methods=None, count=2):
+ """Create multiple server migrations.
+
+ :param dict attrs: A dictionary with all attributes
+ :param int count: The number of server migrations to fake
+ :return A list of fake
+ openstack.compute.v2.server_migration.ServerMigration objects
+ """
+ migrations = []
+ for i in range(0, count):
+ migrations.append(
+ create_one_server_migration(attrs, methods))
+
+ return migrations
def create_one_volume_attachment(attrs=None):
diff --git a/openstackclient/tests/unit/compute/v2/test_server_migration.py b/openstackclient/tests/unit/compute/v2/test_server_migration.py
index ddd9894b..afe868d9 100644
--- a/openstackclient/tests/unit/compute/v2/test_server_migration.py
+++ b/openstackclient/tests/unit/compute/v2/test_server_migration.py
@@ -40,6 +40,18 @@ class TestServerMigration(compute_fakes.TestComputev2):
self.app.client_manager.sdk_connection.compute = mock.Mock()
self.sdk_client = self.app.client_manager.sdk_connection.compute
+ patcher = mock.patch.object(
+ sdk_utils, 'supports_microversion', return_value=True)
+ self.addCleanup(patcher.stop)
+ self.supports_microversion_mock = patcher.start()
+
+ def _set_mock_microversion(self, mock_v):
+ """Set a specific microversion for the mock supports_microversion()."""
+ self.supports_microversion_mock.reset_mock(return_value=True)
+ self.supports_microversion_mock.side_effect = (
+ lambda _, v:
+ api_versions.APIVersion(v) <= api_versions.APIVersion(mock_v))
+
class TestListMigration(TestServerMigration):
"""Test fetch all migrations."""
@@ -51,14 +63,16 @@ class TestListMigration(TestServerMigration):
]
MIGRATION_FIELDS = [
- 'source_node', 'dest_node', 'source_compute', 'dest_compute',
- 'dest_host', 'status', 'server_id', 'old_flavor_id',
+ 'source_node', 'dest_node', 'source_compute',
+ 'dest_compute', 'dest_host', 'status', 'server_id', 'old_flavor_id',
'new_flavor_id', 'created_at', 'updated_at'
]
def setUp(self):
super().setUp()
+ self._set_mock_microversion('2.1')
+
self.server = compute_fakes.FakeServer.create_one_sdk_server()
self.sdk_client.find_server.return_value = self.server
@@ -71,20 +85,6 @@ class TestListMigration(TestServerMigration):
# Get the command object to test
self.cmd = server_migration.ListMigration(self.app, None)
- patcher = mock.patch.object(
- sdk_utils, 'supports_microversion', return_value=True)
- self.addCleanup(patcher.stop)
- self.supports_microversion_mock = patcher.start()
- self._set_mock_microversion(
- self.app.client_manager.compute.api_version.get_string())
-
- def _set_mock_microversion(self, mock_v):
- """Set a specific microversion for the mock supports_microversion()."""
- self.supports_microversion_mock.reset_mock(return_value=True)
- self.supports_microversion_mock.side_effect = (
- lambda _, v:
- api_versions.APIVersion(v) <= api_versions.APIVersion(mock_v))
-
def test_server_migration_list_no_options(self):
arglist = []
verifylist = []
@@ -600,12 +600,15 @@ class TestServerMigrationShow(TestServerMigration):
def setUp(self):
super().setUp()
- self.server = compute_fakes.FakeServer.create_one_server()
- self.servers_mock.get.return_value = self.server
+ self.server = compute_fakes.FakeServer.create_one_sdk_server()
+ self.sdk_client.find_server.return_value = self.server
- self.server_migration = compute_fakes.FakeServerMigration\
- .create_one_server_migration()
- self.server_migrations_mock.get.return_value = self.server_migration
+ self.server_migration = compute_fakes.create_one_server_migration()
+ self.sdk_client.get_server_migration.return_value =\
+ self.server_migration
+ self.sdk_client.server_migrations.return_value = iter(
+ [self.server_migration]
+ )
self.columns = (
'ID',
@@ -628,7 +631,7 @@ class TestServerMigrationShow(TestServerMigration):
self.data = (
self.server_migration.id,
- self.server_migration.server_uuid,
+ self.server_migration.server_id,
self.server_migration.status,
self.server_migration.source_compute,
self.server_migration.source_node,
@@ -661,19 +664,18 @@ class TestServerMigrationShow(TestServerMigration):
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
- self.servers_mock.get.assert_called_with(self.server.id)
- self.server_migrations_mock.get.assert_called_with(
- self.server.id, '2',)
+ self.sdk_client.find_server.assert_called_with(
+ self.server.id, ignore_missing=False)
+ self.sdk_client.get_server_migration.assert_called_with(
+ self.server.id, '2', ignore_missing=False)
def test_server_migration_show(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.24')
+ self._set_mock_microversion('2.24')
self._test_server_migration_show()
def test_server_migration_show_v259(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.59')
+ self._set_mock_microversion('2.59')
self.columns += ('UUID',)
self.data += (self.server_migration.uuid,)
@@ -681,8 +683,7 @@ class TestServerMigrationShow(TestServerMigration):
self._test_server_migration_show()
def test_server_migration_show_v280(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.80')
+ self._set_mock_microversion('2.80')
self.columns += ('UUID', 'User ID', 'Project ID')
self.data += (
@@ -694,8 +695,7 @@ class TestServerMigrationShow(TestServerMigration):
self._test_server_migration_show()
def test_server_migration_show_pre_v224(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.23')
+ self._set_mock_microversion('2.23')
arglist = [
self.server.id,
@@ -713,9 +713,11 @@ class TestServerMigrationShow(TestServerMigration):
str(ex))
def test_server_migration_show_by_uuid(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.59')
- self.server_migrations_mock.list.return_value = [self.server_migration]
+ self._set_mock_microversion('2.59')
+
+ self.sdk_client.server_migrations.return_value = iter(
+ [self.server_migration]
+ )
self.columns += ('UUID',)
self.data += (self.server_migration.uuid,)
@@ -732,14 +734,14 @@ class TestServerMigrationShow(TestServerMigration):
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
- self.servers_mock.get.assert_called_with(self.server.id)
- self.server_migrations_mock.list.assert_called_with(self.server.id)
- self.server_migrations_mock.get.assert_not_called()
+ self.sdk_client.find_server.assert_called_with(
+ self.server.id, ignore_missing=False)
+ self.sdk_client.server_migrations.assert_called_with(self.server.id)
+ self.sdk_client.get_server_migration.assert_not_called()
def test_server_migration_show_by_uuid_no_matches(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.59')
- self.server_migrations_mock.list.return_value = []
+ self._set_mock_microversion('2.59')
+ self.sdk_client.server_migrations.return_value = iter([])
arglist = [
self.server.id,
@@ -757,8 +759,7 @@ class TestServerMigrationShow(TestServerMigration):
str(ex))
def test_server_migration_show_by_uuid_pre_v259(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.58')
+ self._set_mock_microversion('2.58')
arglist = [
self.server.id,
@@ -776,8 +777,7 @@ class TestServerMigrationShow(TestServerMigration):
str(ex))
def test_server_migration_show_invalid_id(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.24')
+ self._set_mock_microversion('2.24')
arglist = [
self.server.id,
@@ -800,17 +800,16 @@ class TestServerMigrationAbort(TestServerMigration):
def setUp(self):
super().setUp()
- self.server = compute_fakes.FakeServer.create_one_server()
+ self.server = compute_fakes.FakeServer.create_one_sdk_server()
# Return value for utils.find_resource for server.
- self.servers_mock.get.return_value = self.server
+ self.sdk_client.find_server.return_value = self.server
# Get the command object to test
self.cmd = server_migration.AbortMigration(self.app, None)
def test_migration_abort(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.24')
+ self._set_mock_microversion('2.24')
arglist = [
self.server.id,
@@ -821,14 +820,14 @@ class TestServerMigrationAbort(TestServerMigration):
result = self.cmd.take_action(parsed_args)
- self.servers_mock.get.assert_called_with(self.server.id)
- self.server_migrations_mock.live_migration_abort.assert_called_with(
- self.server.id, '2',)
+ self.sdk_client.find_server.assert_called_with(
+ self.server.id, ignore_missing=False)
+ self.sdk_client.abort_server_migration.assert_called_with(
+ '2', self.server.id, ignore_missing=False)
self.assertIsNone(result)
def test_migration_abort_pre_v224(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.23')
+ self._set_mock_microversion('2.23')
arglist = [
self.server.id,
@@ -846,12 +845,12 @@ class TestServerMigrationAbort(TestServerMigration):
str(ex))
def test_server_migration_abort_by_uuid(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.59')
+ self._set_mock_microversion('2.59')
- self.server_migration = compute_fakes.FakeServerMigration\
- .create_one_server_migration()
- self.server_migrations_mock.list.return_value = [self.server_migration]
+ self.server_migration = compute_fakes.create_one_server_migration()
+ self.sdk_client.server_migrations.return_value = iter(
+ [self.server_migration]
+ )
arglist = [
self.server.id,
@@ -862,17 +861,19 @@ class TestServerMigrationAbort(TestServerMigration):
result = self.cmd.take_action(parsed_args)
- self.servers_mock.get.assert_called_with(self.server.id)
- self.server_migrations_mock.list.assert_called_with(self.server.id)
- self.server_migrations_mock.live_migration_abort.assert_called_with(
- self.server.id, self.server_migration.id)
+ self.sdk_client.find_server.assert_called_with(
+ self.server.id, ignore_missing=False)
+ self.sdk_client.server_migrations.assert_called_with(self.server.id)
+ self.sdk_client.abort_server_migration.assert_called_with(
+ self.server_migration.id, self.server.id, ignore_missing=False)
self.assertIsNone(result)
def test_server_migration_abort_by_uuid_no_matches(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.59')
+ self._set_mock_microversion('2.59')
- self.server_migrations_mock.list.return_value = []
+ self.sdk_client.server_migrations.return_value = iter(
+ []
+ )
arglist = [
self.server.id,
@@ -890,8 +891,7 @@ class TestServerMigrationAbort(TestServerMigration):
str(ex))
def test_server_migration_abort_by_uuid_pre_v259(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.58')
+ self._set_mock_microversion('2.58')
arglist = [
self.server.id,
@@ -914,17 +914,16 @@ class TestServerMigrationForceComplete(TestServerMigration):
def setUp(self):
super().setUp()
- self.server = compute_fakes.FakeServer.create_one_server()
+ self.server = compute_fakes.FakeServer.create_one_sdk_server()
# Return value for utils.find_resource for server.
- self.servers_mock.get.return_value = self.server
+ self.sdk_client.find_server.return_value = self.server
# Get the command object to test
self.cmd = server_migration.ForceCompleteMigration(self.app, None)
def test_migration_force_complete(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.22')
+ self._set_mock_microversion('2.22')
arglist = [
self.server.id,
@@ -935,14 +934,14 @@ class TestServerMigrationForceComplete(TestServerMigration):
result = self.cmd.take_action(parsed_args)
- self.servers_mock.get.assert_called_with(self.server.id)
- self.server_migrations_mock.live_migrate_force_complete\
- .assert_called_with(self.server.id, '2',)
+ self.sdk_client.find_server.assert_called_with(
+ self.server.id, ignore_missing=False)
+ self.sdk_client.force_complete_server_migration\
+ .assert_called_with('2', self.server.id)
self.assertIsNone(result)
def test_migration_force_complete_pre_v222(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.21')
+ self._set_mock_microversion('2.21')
arglist = [
self.server.id,
@@ -960,12 +959,12 @@ class TestServerMigrationForceComplete(TestServerMigration):
str(ex))
def test_server_migration_force_complete_by_uuid(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.59')
+ self._set_mock_microversion('2.59')
- self.server_migration = compute_fakes.FakeServerMigration\
- .create_one_server_migration()
- self.server_migrations_mock.list.return_value = [self.server_migration]
+ self.server_migration = compute_fakes.create_one_server_migration()
+ self.sdk_client.server_migrations.return_value = iter(
+ [self.server_migration]
+ )
arglist = [
self.server.id,
@@ -976,17 +975,17 @@ class TestServerMigrationForceComplete(TestServerMigration):
result = self.cmd.take_action(parsed_args)
- self.servers_mock.get.assert_called_with(self.server.id)
- self.server_migrations_mock.list.assert_called_with(self.server.id)
- self.server_migrations_mock.live_migrate_force_complete\
- .assert_called_with(self.server.id, self.server_migration.id)
+ self.sdk_client.find_server.assert_called_with(
+ self.server.id, ignore_missing=False)
+ self.sdk_client.server_migrations.assert_called_with(self.server.id)
+ self.sdk_client.force_complete_server_migration.\
+ assert_called_with(self.server_migration.id, self.server.id)
self.assertIsNone(result)
def test_server_migration_force_complete_by_uuid_no_matches(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.59')
+ self._set_mock_microversion('2.59')
- self.server_migrations_mock.list.return_value = []
+ self.sdk_client.server_migrations.return_value = iter([])
arglist = [
self.server.id,
@@ -1004,8 +1003,7 @@ class TestServerMigrationForceComplete(TestServerMigration):
str(ex))
def test_server_migration_force_complete_by_uuid_pre_v259(self):
- self.app.client_manager.compute.api_version = api_versions.APIVersion(
- '2.58')
+ self._set_mock_microversion('2.58')
arglist = [
self.server.id,
diff --git a/releasenotes/notes/switch-server-migration-show-to-sdk-4adb88a0f1f03f3b.yaml b/releasenotes/notes/switch-server-migration-show-to-sdk-4adb88a0f1f03f3b.yaml
new file mode 100644
index 00000000..ec47cd13
--- /dev/null
+++ b/releasenotes/notes/switch-server-migration-show-to-sdk-4adb88a0f1f03f3b.yaml
@@ -0,0 +1,3 @@
+---
+features:
+ - Finish switching server migration to the OpenStackSDK