diff --git a/tcp_tests/fixtures/common_services_fixtures.py b/tcp_tests/fixtures/common_services_fixtures.py
index 2547a08..eb46f93 100644
--- a/tcp_tests/fixtures/common_services_fixtures.py
+++ b/tcp_tests/fixtures/common_services_fixtures.py
@@ -19,6 +19,7 @@
 
 from tcp_tests import logger
 from tcp_tests.helpers import ext
+from tcp_tests.helpers import utils
 from tcp_tests import settings
 from tcp_tests.managers import common_services_manager
 
@@ -71,8 +72,8 @@
     # Create Salt cluster
     if not config.common_services.common_services_installed:
         steps_path = config.common_services_deploy.common_services_steps_path
-        with underlay.yaml_editor(steps_path) as commands:
-            common_services_actions.install(commands.content)
+        commands = utils.read_template(steps_path)
+        common_services_actions.install(commands)
         hardware.create_snapshot(ext.SNAPSHOT.common_services_deployed)
 
     else:
diff --git a/tcp_tests/fixtures/openstack_fixtures.py b/tcp_tests/fixtures/openstack_fixtures.py
index f0a9024..cba8823 100644
--- a/tcp_tests/fixtures/openstack_fixtures.py
+++ b/tcp_tests/fixtures/openstack_fixtures.py
@@ -19,6 +19,7 @@
 
 from tcp_tests import logger
 from tcp_tests.helpers import ext
+from tcp_tests.helpers import utils
 from tcp_tests import settings
 from tcp_tests.managers import openstack_manager
 
@@ -70,8 +71,8 @@
     # Create Salt cluster
     if not config.openstack.openstack_installed:
         steps_path = config.openstack_deploy.openstack_steps_path
-        with underlay.yaml_editor(steps_path) as commands:
-            openstack_actions.install(commands.content)
+        commands = utils.read_template(steps_path)
+        openstack_actions.install(commands)
         hardware.create_snapshot(ext.SNAPSHOT.openstack_deployed)
 
     else:
diff --git a/tcp_tests/fixtures/salt_fixtures.py b/tcp_tests/fixtures/salt_fixtures.py
index 977b38d..3b9c52b 100644
--- a/tcp_tests/fixtures/salt_fixtures.py
+++ b/tcp_tests/fixtures/salt_fixtures.py
@@ -19,6 +19,7 @@
 
 from tcp_tests import logger
 from tcp_tests.helpers import ext
+from tcp_tests.helpers import utils
 from tcp_tests import settings
 from tcp_tests.managers import saltmanager
 
@@ -66,9 +67,8 @@
     """
     # Create Salt cluster
     if config.salt.salt_master_host == '0.0.0.0':
-        with underlay.yaml_editor(
-                config.salt_deploy.salt_steps_path) as commands:
-            salt_actions.install(commands.content)
+        commands = utils.read_template(config.salt_deploy.salt_steps_path)
+        salt_actions.install(commands)
         hardware.create_snapshot(ext.SNAPSHOT.salt_deployed)
 
     else:
