diff --git a/xos/synchronizer/steps/roles/build_and_run/tasks/main.yml b/xos/synchronizer/steps/roles/build_and_run/tasks/main.yml
index 74d619c..ff7ff63 100644
--- a/xos/synchronizer/steps/roles/build_and_run/tasks/main.yml
+++ b/xos/synchronizer/steps/roles/build_and_run/tasks/main.yml
@@ -14,23 +14,6 @@
 
 ---
 
-# Set CPU Hexacode
-- name: change CPU hexacode in run.sh file
-  become: yes
-  template:
-    src=run.sh.j2
-    dest="{{source_path}}/cp/run.sh" owner=root group=root mode=755
-
-# Set size of Hugepage
-- name: set hugepage parameter
-  become: yes
-  shell: "echo vm.nr_hugepages=512 >> /etc/sysctl.conf"
-
-# Adjust the parameter for Hugepage
-- name: adjust changed hugepage parameter
-  become: yes
-  shell: "sysctl -p"
-
 # Make shell script to run vSPGW-C with log
 - name: make run with log file
   become: yes
diff --git a/xos/synchronizer/steps/roles/build_and_run/templates/run.sh.j2 b/xos/synchronizer/steps/roles/build_and_run/templates/run.sh.j2
deleted file mode 100644
index 2323a5a..0000000
--- a/xos/synchronizer/steps/roles/build_and_run/templates/run.sh.j2
+++ /dev/null
@@ -1,54 +0,0 @@
-#! /bin/bash
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-source ../config/cp_config.cfg
-
-APP_PATH="./build"
-APP="ngic_controlplane"
-
-ARGS="-c {{ cpu_hexacode }} -n 4 --socket-mem $MEMORY,0 --file-prefix cp --no-pci -- \
-  -s $S11_SGW_IP          \
-  -m $S11_MME_IP          \
-  -w $S1U_SGW_IP          \
-  -i $IP_POOL_IP          \
-  -p $IP_POOL_MASK        \
-  -a $APN"
-
-USAGE=$"Usage: run.sh [ debug | log ]
-	debug:	executes $APP under gdb
-	log:	executes $APP with logging enabled to date named file under
-		$APP_PATH/logs. Requires Control-C to exit even if $APP exits"
-
-if [ -z "$1" ]; then
-
-	$APP_PATH/$APP $ARGS
-
-elif [ "$1" == "log" ]; then
-
-	if [ "$#" -eq "2" ]; then
-		FILE="${FILE/.log/.$2.log}"
-		echo "logging as $FILE"
-	fi
-	trap "killall $APP; exit" SIGINT
-	stdbuf -oL -eL $APP_PATH/$APP $ARGS </dev/null &>$FILE & tail -f $FILE
-
-elif [ "$1" == "debug" ];then
-
-	GDB_EX="-ex 'set print pretty on'"
-	gdb $GDB_EX --args $APP_PATH/$APP $ARGS
-
-else
-	echo "$USAGE"
-fi
\ No newline at end of file
diff --git a/xos/synchronizer/steps/sync_vspgwctenant.py b/xos/synchronizer/steps/sync_vspgwctenant.py
index cb2608e..ea8a79a 100644
--- a/xos/synchronizer/steps/sync_vspgwctenant.py
+++ b/xos/synchronizer/steps/sync_vspgwctenant.py
@@ -203,17 +203,17 @@
             "SDNControllerServiceInstance", o)
 
         if vmme_flag and venb_flag and sdncontroller_flag and vspgwu_flag and internetemulator_flag:
-            return 'ng4t_with_sdncontroller'
+            return 'normal_scenario'
 
         if vmme_flag and venb_flag and (not sdncontroller_flag) and vspgwu_flag and internetemulator_flag:
-            return 'ng4t_without_sdncontroller'
+            return 'normal_scenario_without_sdncontroller'
 
         if (not vmme_flag) and venb_flag and sdncontroller_flag and vspgwu_flag and (not internetemulator_flag):
-            return 'spirent_with_sdncontroller'
+            return 'emulator_scenario'
 
         if (not vmme_flag) and venb_flag and (not sdncontroller_flag) and vspgwu_flag and (
                 not internetemulator_flag):
-            return 'spirent_without_sdncontroller'
+            return 'emulator_scenario_without_sdncontroller'
 
         return 'manual'
 
@@ -253,7 +253,6 @@
                     'Could not find service type in service graph', service_type=sitype, object=o)
                 raise Exception(
                     "Synchronization failed due to incomplete service graph")
-
         return peer_service
 
     # To get each network id
diff --git a/xos/synchronizer/steps/vspgwctenant_playbook.yaml b/xos/synchronizer/steps/vspgwctenant_playbook.yaml
index fc42ef6..017d65b 100644
--- a/xos/synchronizer/steps/vspgwctenant_playbook.yaml
+++ b/xos/synchronizer/steps/vspgwctenant_playbook.yaml
@@ -40,7 +40,7 @@
     - ip_pool_mask_int: "8"
   roles:
     - interface_config
-    - build_and_run
+    #- build_and_run #Temoporal comment out until epc-service is completed
 
 - hosts: localhost
   vars:
