diff --git a/tcp_tests/managers/runtestmanager.py b/tcp_tests/managers/runtestmanager.py
index b5772c5..70d573b 100644
--- a/tcp_tests/managers/runtestmanager.py
+++ b/tcp_tests/managers/runtestmanager.py
@@ -14,6 +14,7 @@
 
 import json
 import os
+import time
 
 from devops.helpers import helpers
 
@@ -124,15 +125,7 @@
             'pip.install', 'docker'), None
 
     def run_salt_minion_state(self):
-        return self.salt_api.enforce_state(self.master_tgt, 'salt.minion')
-
-    def check_ping_salt_master(self):
-        return self.salt_api.local('cfg01*', 'test.ping')
-
-    def install_formula(self):
-        return self.salt_api.local(
-            self.master_tgt,
-            'pkg.install', 'salt-formula-runtest'), None
+        return self.salt_api.local('cfg01*', 'state.sls', 'salt.minion')
 
     def create_networks(self):
         return self.salt_api.enforce_state(self.master_tgt, 'neutron.client')
@@ -207,17 +200,13 @@
 
     def prepare(self):
         self.store_runtest_model()
-        res = self.install_formula()
-        LOG.info(json.dumps(res, indent=4))
 
         res = self.install_python_lib()
         LOG.info(json.dumps(res, indent=4))
 
         res = self.run_salt_minion_state()
         LOG.info(json.dumps(res, indent=4))
-
-        res = self.check_ping_salt_master()
-        LOG.info(json.dumps(res, indent=4))
+        time.sleep(10)
 
         res = self.create_networks()
         LOG.info(json.dumps(res, indent=4))
diff --git a/tcp_tests/templates/cookied-mcp-pike-dpdk/openstack.yaml b/tcp_tests/templates/cookied-mcp-pike-dpdk/openstack.yaml
index 394da50..87d11e3 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dpdk/openstack.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dpdk/openstack.yaml
@@ -240,5 +240,3 @@
   skip_fail: false
 
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
-
diff --git a/tcp_tests/templates/cookied-mcp-pike-dvr/openstack.yaml b/tcp_tests/templates/cookied-mcp-pike-dvr/openstack.yaml
index 464323e..26d7992 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dvr/openstack.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dvr/openstack.yaml
@@ -350,4 +350,3 @@
   skip_fail: false
 
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
diff --git a/tcp_tests/templates/cookied-mcp-pike-ovs/openstack.yaml b/tcp_tests/templates/cookied-mcp-pike-ovs/openstack.yaml
index 6b23f36..9a8e2ab 100644
--- a/tcp_tests/templates/cookied-mcp-pike-ovs/openstack.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-ovs/openstack.yaml
@@ -329,4 +329,3 @@
   skip_fail: false
 
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
diff --git a/tcp_tests/templates/virtual-mcp-pike-dvr-ceph-rgw/ceph.yaml b/tcp_tests/templates/virtual-mcp-pike-dvr-ceph-rgw/ceph.yaml
index 34432e6..e55c9f8 100644
--- a/tcp_tests/templates/virtual-mcp-pike-dvr-ceph-rgw/ceph.yaml
+++ b/tcp_tests/templates/virtual-mcp-pike-dvr-ceph-rgw/ceph.yaml
@@ -169,4 +169,3 @@
 
 {{ BACKUP.MACRO_BACKUP_CEPH() }}
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
diff --git a/tcp_tests/templates/virtual-mcp-pike-dvr-ssl-barbican/openstack.yaml b/tcp_tests/templates/virtual-mcp-pike-dvr-ssl-barbican/openstack.yaml
index b08f8d1..98e2784 100644
--- a/tcp_tests/templates/virtual-mcp-pike-dvr-ssl-barbican/openstack.yaml
+++ b/tcp_tests/templates/virtual-mcp-pike-dvr-ssl-barbican/openstack.yaml
@@ -349,5 +349,4 @@
   skip_fail: false
 
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
 
diff --git a/tcp_tests/templates/virtual-mcp-pike-dvr-ssl/openstack.yaml b/tcp_tests/templates/virtual-mcp-pike-dvr-ssl/openstack.yaml
index 8844355..7417c09 100644
--- a/tcp_tests/templates/virtual-mcp-pike-dvr-ssl/openstack.yaml
+++ b/tcp_tests/templates/virtual-mcp-pike-dvr-ssl/openstack.yaml
@@ -334,5 +334,4 @@
   skip_fail: false
 
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
 
diff --git a/tcp_tests/templates/virtual-mcp-pike-dvr/openstack.yaml b/tcp_tests/templates/virtual-mcp-pike-dvr/openstack.yaml
index 87ab689..97c05e4 100644
--- a/tcp_tests/templates/virtual-mcp-pike-dvr/openstack.yaml
+++ b/tcp_tests/templates/virtual-mcp-pike-dvr/openstack.yaml
@@ -330,4 +330,3 @@
 {{ BACKUP.MACRO_BACKUP_BACKUPNINJA() }}
 {{ BACKUP.MACRO_BACKUP_XTRABACKUP() }}
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
diff --git a/tcp_tests/templates/virtual-mcp-pike-ovs-ceph/ceph.yaml b/tcp_tests/templates/virtual-mcp-pike-ovs-ceph/ceph.yaml
index aa22053..c97a270 100644
--- a/tcp_tests/templates/virtual-mcp-pike-ovs-ceph/ceph.yaml
+++ b/tcp_tests/templates/virtual-mcp-pike-ovs-ceph/ceph.yaml
@@ -168,5 +168,4 @@
   skip_fail: false
 
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
 
diff --git a/tcp_tests/templates/virtual-mcp-pike-ovs/openstack.yaml b/tcp_tests/templates/virtual-mcp-pike-ovs/openstack.yaml
index 88815bd..08c7cc7 100644
--- a/tcp_tests/templates/virtual-mcp-pike-ovs/openstack.yaml
+++ b/tcp_tests/templates/virtual-mcp-pike-ovs/openstack.yaml
@@ -349,4 +349,3 @@
 {{ BACKUP.MACRO_BACKUP_BACKUPNINJA() }}
 {{ BACKUP.MACRO_BACKUP_XTRABACKUP() }}
 {{ SHARED.INSTALL_DOCKER_ON_GTW() }}
-{{ SHARED.RUN_NEW_TEMPEST() }}
\ No newline at end of file
