diff --git a/tcp_tests/tests/system/test_mcp_update.py b/tcp_tests/tests/system/test_mcp_update.py
index 72ed442..12d2aa8 100644
--- a/tcp_tests/tests/system/test_mcp_update.py
+++ b/tcp_tests/tests/system/test_mcp_update.py
@@ -98,41 +98,49 @@
 @pytest.fixture
 def wa_for_galera_clustercheck_password_prod35705(reclass_actions,
                                                   salt_actions):
-    reclass_actions.add_key(
-        "parameters._param.galera_clustercheck_password",
-        "a"*32,
-        "cluster/*/infra/secrets.yml")
-    salt_actions.run_state(
-        "I@galera:master or I@galera:slave", "saltutil.refresh_pillar")
-    salt_actions.enforce_state(
-        "I@galera:master or I@galera:slave", "galera")
-    salt_actions.enforce_state(
-        "I@galera:master or I@galera:slave", "haproxy")
-    reclass_actions.commit("[from TCP-QA] Add galera_clustercheck_password")
+    tgt = "I@galera:master or I@galera:slave"
+    if not salt_actions.get_pillar(tgt,
+                                   "_param:galera_clustercheck_password")[0]:
+        reclass_actions.add_key(
+            "parameters._param.galera_clustercheck_password",
+            "a"*32,
+            "cluster/*/infra/secrets.yml")
+        salt_actions.run_state(tgt, "saltutil.refresh_pillar")
+        salt_actions.enforce_state(tgt, "galera")
+        salt_actions.enforce_state(tgt, "haproxy")
+        reclass_actions.commit(
+          "[from TCP-QA] Add galera_clustercheck_password")
+    else:
+        LOG.info("Skipping WA for Galera Clustercheck Password")
 
 
 @pytest.fixture
 def wa_for_alerta_password_prod35958(reclass_actions,
                                      salt_actions):
-    reclass_actions.add_key(
-        "parameters._param.alerta_admin_api_key_generated",
-        "a"*32,
-        "cluster/*/infra/secrets.yml")
-    reclass_actions.add_key(
-        "parameters._param.alerta_admin_key",
-        "${_param:alerta_admin_api_key_generated}",
-        "cluster/*/stacklight/init.yml")
-    reclass_actions.commit("[from TCP-QA] Add alerta_admin_key")
-    salt_actions.run_state(
-        "I@prometheus:alerta or I@prometheus:alertmanager",
-        "saltutil.refresh_pillar")
-    salt_actions.enforce_state(
-        "I@prometheus:alerta", "prometheus.alerta")
-    salt_actions.enforce_state(
-        "I@prometheus:alertmanager", "prometheus.alertmanager")
-    salt_actions.enforce_state(
-        "I@prometheus:alerta or I@prometheus:alertmanager",
-        "docker.client")
+
+    if not salt_actions.get_pillar("I@prometheus:alerta",
+                                   "_param:alerta_admin_api_key_generated")[0]:
+        reclass_actions.add_key(
+            "parameters._param.alerta_admin_api_key_generated",
+            "a"*32,
+            "cluster/*/infra/secrets.yml")
+        reclass_actions.add_key(
+            "parameters._param.alerta_admin_key",
+            "${_param:alerta_admin_api_key_generated}",
+            "cluster/*/stacklight/init.yml")
+        reclass_actions.commit("[from TCP-QA] Add alerta_admin_key")
+        salt_actions.run_state(
+            "I@prometheus:alerta or I@prometheus:alertmanager",
+            "saltutil.refresh_pillar")
+        salt_actions.enforce_state(
+            "I@prometheus:alerta", "prometheus.alerta")
+        salt_actions.enforce_state(
+            "I@prometheus:alertmanager", "prometheus.alertmanager")
+        salt_actions.enforce_state(
+            "I@prometheus:alerta or I@prometheus:alertmanager",
+            "docker.client")
+    else:
+        LOG.info("Skipping WA for Alerta API key")
 
 
 @pytest.fixture(scope='class')
