Skip to content

Commit

Permalink
Add validation for dr operators as part of ocs upgrade test in the ca…
Browse files Browse the repository at this point in the history
…se of zstream upgrade

Signed-off-by: Shylesh Kumar Mohan <shmohan@redhat.com>
  • Loading branch information
shylesh authored and amr1ta committed Oct 8, 2024
1 parent 11670e9 commit 7fc0139
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 3 deletions.
6 changes: 3 additions & 3 deletions ocs_ci/ocs/dr_upgrade.py
Original file line number Diff line number Diff line change
Expand Up @@ -211,10 +211,10 @@ def __init__(self):
super().__init__(resource_name=defaults.MCO_OPERATOR_NAME)
self.operator_name = defaults.MCO_OPERATOR_NAME
self.subscription_name = constants.MCO_SUBSCRIPTION
self.pod_name_pattern = "odfmo-controller-manager"

def run_upgrade(self):
# Collect some pre-upgrade data for comparision after the upgrade
self.pod_name_pattern = "odfmo-controller-manager"
self.collect_data()
assert (
self.pre_upgrade_data.get("pod_status", "") == "Running"
Expand Down Expand Up @@ -242,9 +242,9 @@ def __init__(self):
self.subscription_name = constants.DR_HUB_OPERATOR_SUBSCRIPTION.replace(
"PLACEHOLDER", config.ENV_DATA["ocs_version"]
)
self.pod_name_pattern = "ramen-hub-operator"

def run_upgrade(self):
self.pod_name_pattern = "ramen-hub-operator"
self.collect_data()
assert (
self.pre_upgrade_data.get("pod_status", "") == "Running"
Expand Down Expand Up @@ -275,9 +275,9 @@ def __init__(self):
self.subscription_name = constants.DR_CLUSTER_OPERATOR_SUBSCRIPTION.replace(
"PLACEHOLDER", config.ENV_DATA["ocs_version"]
)
self.pod_name_pattern = "ramen-dr-cluster-operator"

def run_upgrade(self):
self.pod_name_pattern = "ramen-dr-cluster-operator"
self.collect_data()
assert (
self.pre_upgrade_data.get("pod_status", "") == "Running"
Expand Down
17 changes: 17 additions & 0 deletions tests/functional/upgrade/test_upgrade.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
dr_cluster_operator_upgrade,
acm_upgrade,
)
from ocs_ci.framework import config
from ocs_ci.ocs.acm_upgrade import ACMUpgrade
from ocs_ci.ocs.disruptive_operations import worker_node_shutdown, osd_node_reboot
from ocs_ci.ocs.ocs_upgrade import run_ocs_upgrade
Expand All @@ -28,6 +29,13 @@
log = logging.getLogger(__name__)


operator_map = {
"mco": MultiClusterOrchestratorUpgrade,
"drhub": DRHubUpgrade,
"drcluster": DRClusterOperatorUpgrade,
}


@pytest.fixture()
def teardown(request, nodes):
def finalizer():
Expand Down Expand Up @@ -86,6 +94,15 @@ def test_upgrade(zone_rank, role_rank, config_index):
"""

run_ocs_upgrade()
if config.multicluster and config.MULTICLUSTER["multicluster_mode"] == "metro-dr":
# Perform validation for MCO, dr hub operator and dr cluster operator here
# in case of z stream because we wouldn't call those tests in the case of
# z stream
if is_z_stream_upgrade():
for operator, op_upgrade_cls in operator_map.items():
temp = op_upgrade_cls()
log.info(f"Validating upgrade for {operator}")
temp.validate_upgrade()


@purple_squad
Expand Down

0 comments on commit 7fc0139

Please sign in to comment.