def teardown(self):
    """
    Delete pvc and config map created
    """
    assert ocp.delete(resource_name='cluster-monitoring-config')
    pvc_obj_list = get_list_pvc_objs_created_on_monitoring_pods()
    assert delete_pvcs(pvc_obj_list)
Example #2
0
def pre_upgrade_monitoring_pvc():
    """
    Loads the list of pvc objects created on monitoring pods

    """
    monitoring_pvcs_before_upgrade = get_list_pvc_objs_created_on_monitoring_pods(
    )
    return monitoring_pvcs_before_upgrade
def test_monitoring_after_ocp_upgrade(pre_upgrade_monitoring_pvc):
    """
    After ocp upgrade validate all monitoring pods are up and running,
    its health is OK and also confirm no new monitoring
    pvc created instead using previous one.

    """
    pod_obj_list = pod.get_all_pods(
        namespace=defaults.OCS_MONITORING_NAMESPACE)

    POD.wait_for_resource(
        condition=constants.STATUS_RUNNING,
        resource_count=len(pod_obj_list),
        timeout=180,
    )
    post_upgrade_monitoring_pvc = get_list_pvc_objs_created_on_monitoring_pods(
    )

    assert len(pre_upgrade_monitoring_pvc) == len(
        post_upgrade_monitoring_pvc
    ), ("Before and after ocp upgrade pvc are not matching"
        f"pre_upgrade_monitoring_pvc are {[pvc_obj.name for pvc_obj in pre_upgrade_monitoring_pvc]}."
        f"post_upgrade_monitoring_pvc are {[pvc_obj.name for pvc_obj in post_upgrade_monitoring_pvc]}"
        )

    before_upgrade_pv_list = []
    after_upgrade_pv_list = []
    for before_upgrade_pvc_obj in pre_upgrade_monitoring_pvc:
        before_upgrade_pv_list.append(
            before_upgrade_pvc_obj.get().get("spec").get("volumeName"))

    for after_upgrade_pvc_obj in post_upgrade_monitoring_pvc:
        after_upgrade_pv_list.append(
            after_upgrade_pvc_obj.get().get("spec").get("volumeName"))
        assert after_upgrade_pvc_obj.get().get("status").get(
            "phase") == "Bound"

    assert set(before_upgrade_pv_list) == set(
        after_upgrade_pv_list
    ), "Before and after ocp upgrade pv list are not matching"
    assert prometheus_health_check(), "Prometheus health is degraded"