diff --git a/tcp_tests/tests/system/test_ceph_luminous_upgrade.py b/tcp_tests/tests/system/test_ceph_luminous_upgrade.py
index 11b4da5..b5fda24 100644
--- a/tcp_tests/tests/system/test_ceph_luminous_upgrade.py
+++ b/tcp_tests/tests/system/test_ceph_luminous_upgrade.py
@@ -7,24 +7,30 @@
 LOG = logger.logger
 
 
-@pytest.fixture
-def wa_cve_2021_20288_global_id_reclaim(reclass_actions,
-                                        salt_actions):
-    tgt = "I@ceph:common"
-    context_file = "cluster/*/ceph/common.yml"
-    if not reclass_actions.check_existence(
+def wa_cve_2021_20288_global_id_reclaim(reclass_actions, salt_actions):
+    if reclass_actions.check_existence(
             'parameters.ceph.common.config.mon.'
             + 'auth_allow_insecure_global_id_reclaim'):
-        reclass_actions.add_bool_key(
-            'parameters.ceph.common.config.mon.'
-            + 'auth_allow_insecure_global_id_reclaim', "False", context_file)
-        salt_actions.run_state(tgt, "state.apply", "ceph.common")
-        salt_actions.cmd_run(tgt, "systemctl restart ceph-mon.target")
-    else:
         LOG.info("Skipping WA ceph set auth_allow_insecure_global_id_reclaim")
+        return
+
+    common_tgt = "I@ceph:common"
+    mon_tgt = "I@ceph:mon"
+
+    context_file = "cluster/*/ceph/common.yml"
+    reclass_actions.add_bool_key(
+        'parameters.ceph.common.config.mon.'
+        + 'auth_allow_insecure_global_id_reclaim', "False", context_file)
+    salt_actions.cmd_run("cfg01*",
+                         "cd /srv/salt/reclass; git add -u && "
+                         "git commit --allow-empty "
+                         "-m 'apply auth_allow_insecure_global_id_reclaim "
+                         "parameter'")
+    salt_actions.run_state("*", "saltutil.refresh_pillar")
+    salt_actions.run_state(common_tgt, "state.apply", "ceph.common")
+    salt_actions.cmd_run(mon_tgt, "systemctl restart ceph-mon.target")
 
 
-@pytest.mark.usefixtures("wa_cve_2021_20288_global_id_reclaim")
 class TestCephLuminousUpgrade(object):
 
     @pytest.mark.grab_versions
@@ -39,7 +45,6 @@
             2. Run Pipeline Ceph - upgrade
         https://docs.mirantis.com/mcp/master/mcp-operations-guide/ update-upgrade/major-upgrade/ceph-upgrade/upgrade-ceph.html
         """  # noqa: E501
-
         salt = salt_actions
         reclass = reclass_actions
         dt = drivetrain_actions
@@ -49,11 +54,29 @@
                         "nautilus",
                         "cluster/*/ceph/init.yml")
         reclass.add_key(
-            "parameters._param.linux_system_repo_update_mcp_ceph_url",
-            "${_param:linux_system_repo_update_url}/ceph-nautilus/",
-            "cluster/*/infra/init.yml")
-        reclass.add_class("system.ceph.mgr.cluster",
-                          "cluster/*/ceph/mon.yml")
+            "parameters._param.linux_system_repo_mcp_ceph_codename",
+            "nautilus",
+            "cluster/*/ceph/init.yml")
+        reclass.delete_class(
+            "system.linux.system.repo.mcp.apt_mirantis.ceph",
+            "cluster/*/ceph/common.yml"
+            )
+        reclass.delete_class(
+            "system.linux.system.repo.mcp.apt_mirantis.ceph",
+            "cluster/*/openstack/init.yml"
+            )
+        reclass.delete_class(
+            "system.linux.system.repo.mcp.apt_mirantis.ceph",
+            "cluster/*/infra/kvm.yml"
+        )
+        values = reclass.get_key("classes", "cluster/*/ceph/mon.yml")
+        try:
+            mon_cluster_index = values.index("system.ceph.mon.cluster")
+        except ValueError:
+            mon_cluster_index = 0
+        values.insert(mon_cluster_index+1, "system.ceph.mgr.cluster")
+        reclass.add_key("classes", values, "cluster/*/ceph/mon.yml")
+
         salt.cmd_run("cfg01*",
                      "cd /srv/salt/reclass; git add -u && \
                          git commit --allow-empty \
@@ -83,3 +106,4 @@
             job_parameters=job_parameters)
 
         assert job_result == 'SUCCESS', job_description
+        wa_cve_2021_20288_global_id_reclaim(reclass_actions, salt_actions)
