Merge "Fix share server migration with replica test"
This commit is contained in:
@@ -287,6 +287,14 @@ ShareGroup = [
|
||||
cfg.BoolOpt("run_mount_snapshot_tests",
|
||||
default=False,
|
||||
help="Enable or disable mountable snapshot tests."),
|
||||
cfg.BoolOpt("run_negative_migration_replica_tests",
|
||||
default=False,
|
||||
help="Enable or disable negative migration with replica "
|
||||
"tests."),
|
||||
cfg.BoolOpt("run_positive_migration_replica_tests",
|
||||
default=True,
|
||||
help="Enable or disable positive migration with replica tests."
|
||||
),
|
||||
cfg.BoolOpt("run_create_share_from_snapshot_in_another_pool_or_az_tests",
|
||||
default=False,
|
||||
help="Defines whether to run tests that create share from "
|
||||
|
||||
@@ -17,6 +17,7 @@ import ddt
|
||||
from tempest import config
|
||||
from tempest.lib import decorators
|
||||
from tempest.lib import exceptions
|
||||
import testtools
|
||||
from testtools import testcase as tc
|
||||
|
||||
from manila_tempest_tests.common import constants
|
||||
@@ -330,11 +331,31 @@ class ShareServerMigrationBasicNFS(MigrationShareServerBase):
|
||||
@ddt.data(
|
||||
(False, False),
|
||||
(True, False),
|
||||
)
|
||||
@ddt.unpack
|
||||
def test_share_server_migration_complete(
|
||||
self, new_share_network, check_with_replica
|
||||
):
|
||||
self._test_share_server_migration_complete(
|
||||
new_share_network, check_with_replica)
|
||||
|
||||
@decorators.idempotent_id('ae0e9e6c-3a77-4c4b-907b-8a793f88c734')
|
||||
@testtools.skipUnless(CONF.share.run_positive_migration_replica_tests,
|
||||
'Share server migration with replica test '
|
||||
'is disabled.')
|
||||
@tc.attr(base.TAG_POSITIVE, base.TAG_BACKEND)
|
||||
@ddt.data(
|
||||
(True, True)
|
||||
)
|
||||
@ddt.unpack
|
||||
def test_share_server_migration_complete(self, new_share_network,
|
||||
check_with_replica):
|
||||
def test_share_server_migration_complete_allow_replica(
|
||||
self, new_share_network, check_with_replica
|
||||
):
|
||||
self._test_share_server_migration_complete(
|
||||
new_share_network, check_with_replica)
|
||||
|
||||
def _test_share_server_migration_complete(self, new_share_network,
|
||||
check_with_replica):
|
||||
"""Test the share server migration complete."""
|
||||
share_network_id = self.provide_share_network(
|
||||
self.shares_v2_client, self.networks_client)
|
||||
|
||||
@@ -17,6 +17,7 @@ from tempest import config
|
||||
from tempest.lib.common.utils import data_utils
|
||||
from tempest.lib import decorators
|
||||
from tempest.lib import exceptions as lib_exc
|
||||
import testtools
|
||||
from testtools import testcase as tc
|
||||
|
||||
|
||||
@@ -342,6 +343,43 @@ class ShareServerMigrationStartInvalidStatesNFS(MigrationShareServerNegative):
|
||||
dest_host
|
||||
)
|
||||
|
||||
@decorators.idempotent_id('ebe8da5b-ee9c-48c7-a7e4-9e71839f813f')
|
||||
@tc.attr(base.TAG_NEGATIVE, base.TAG_API_WITH_BACKEND)
|
||||
@testtools.skipUnless(
|
||||
CONF.share.run_negative_migration_replica_tests,
|
||||
'Share server negative migration with replica test is disabled.'
|
||||
)
|
||||
def test_share_server_migration_start_with_share_replica(self):
|
||||
"""Try server migration start with share replica."""
|
||||
if not CONF.share.backend_replication_type or (
|
||||
not CONF.share.run_replication_tests):
|
||||
raise self.skipException(
|
||||
'Share replica tests are disabled or unsupported.')
|
||||
extra_specs = {
|
||||
'driver_handles_share_servers': CONF.share.multitenancy_enabled,
|
||||
'replication_type': CONF.share.backend_replication_type
|
||||
}
|
||||
share_type = self.shares_v2_client.create_share_type(
|
||||
name=data_utils.rand_name("tempest-share-type"),
|
||||
extra_specs=extra_specs,
|
||||
cleanup_in_class=False)
|
||||
share = self.create_share(share_type_id=share_type['share_type']['id'],
|
||||
share_protocol=self.protocol,
|
||||
cleanup_in_class=False)
|
||||
share = self.shares_v2_client.get_share(share['id'])['share']
|
||||
share_server_id = share['share_server_id']
|
||||
dest_host, _ = self._choose_compatible_backend_for_share_server(
|
||||
share_server_id)
|
||||
self.create_share_replica(
|
||||
share['id'],
|
||||
cleanup_in_class=False)
|
||||
self.assertRaises(
|
||||
lib_exc.Conflict,
|
||||
self.shares_v2_client.share_server_migration_start,
|
||||
share_server_id,
|
||||
dest_host
|
||||
)
|
||||
|
||||
|
||||
class ShareServerMigrationInvalidParametersCIFS(
|
||||
ShareServerMigrationInvalidParametersNFS):
|
||||
|
||||
Reference in New Issue
Block a user