diff --git a/jjb/pipeline/voltha/voltha-2.8/voltha-dt-physical-functional-tests.groovy b/jjb/pipeline/voltha/voltha-2.8/voltha-dt-physical-functional-tests.groovy
index 6744891..b39b110 100644
--- a/jjb/pipeline/voltha/voltha-2.8/voltha-dt-physical-functional-tests.groovy
+++ b/jjb/pipeline/voltha/voltha-2.8/voltha-dt-physical-functional-tests.groovy
@@ -111,7 +111,7 @@
         ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/dt-workflow/FunctionalTests"
       }
       steps {
-        startComponentsLog(logsDir: "$WORKSPACE/logs/FunctionalTests")
+        startComponentsLogs(logsDir: "$WORKSPACE/logs/FunctionalTests")
         sh """
         mkdir -p $ROBOT_LOGS_DIR
         if ( ${powerSwitch} ); then
@@ -121,7 +121,7 @@
         fi
         make -C $WORKSPACE/voltha-system-tests voltha-dt-test || true
         """
-        stopComponentsLog(logsDir: "$WORKSPACE/logs/FunctionalTests", compress: true)
+        stopComponentsLogs(logsDir: "$WORKSPACE/logs/FunctionalTests", compress: true)
       }
     }
 
@@ -132,7 +132,7 @@
         ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/dt-workflow/FailureScenarios"
       }
       steps {
-        startComponentsLog(logsDir: "$WORKSPACE/logs/FailureScenarios")
+        startComponentsLogs(logsDir: "$WORKSPACE/logs/FailureScenarios")
         sh """
         mkdir -p $ROBOT_LOGS_DIR
         if ( ${powerSwitch} ); then
@@ -142,7 +142,7 @@
         fi
         make -C $WORKSPACE/voltha-system-tests voltha-dt-test || true
         """
-        stopComponentsLog(logsDir: "$WORKSPACE/logs/FailureScenarios", compress: true)
+        stopComponentsLogs(logsDir: "$WORKSPACE/logs/FailureScenarios", compress: true)
       }
     }
 
@@ -153,13 +153,13 @@
         ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/dt-workflow/DataplaneTests"
       }
       steps {
-        startComponentsLog(logsDir: "$WORKSPACE/logs/DataplaneTests")
+        startComponentsLogs(logsDir: "$WORKSPACE/logs/DataplaneTests")
         sh """
         mkdir -p $ROBOT_LOGS_DIR
         export ROBOT_MISC_ARGS="--removekeywords wuks -i dataplaneDt -e bbsim -e notready -d $ROBOT_LOGS_DIR -v POD_NAME:${configFileName} -v KUBERNETES_CONFIGS_DIR:$WORKSPACE/${configBaseDir}/${configKubernetesDir} -v container_log_dir:$WORKSPACE -v OLT_ADAPTER_APP_LABEL:${oltAdapterAppLabel}"
         make -C $WORKSPACE/voltha-system-tests voltha-dt-test || true
         """
-        stopComponentsLog(logsDir: "$WORKSPACE/logs/DataplaneTests", compress: true)
+        stopComponentsLogs(logsDir: "$WORKSPACE/logs/DataplaneTests", compress: true)
       }
     }
     stage('HA Tests') {
@@ -169,13 +169,13 @@
        ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/ONOSHAScenarios"
       }
       steps {
-        startComponentsLog(logsDir: "$WORKSPACE/logs/ONOSHAScenarios")
+        startComponentsLogs(logsDir: "$WORKSPACE/logs/ONOSHAScenarios")
         sh """
         mkdir -p $ROBOT_LOGS_DIR
         export ROBOT_MISC_ARGS="--removekeywords wuks -L TRACE -e bbsim -e notready -d $ROBOT_LOGS_DIR -v POD_NAME:${configFileName} -v workflow:${params.workFlow} -v KUBERNETES_CONFIGS_DIR:$WORKSPACE/${configBaseDir}/${configKubernetesDir} -v container_log_dir:$WORKSPACE -v OLT_ADAPTER_APP_LABEL:${oltAdapterAppLabel}"
         make -C $WORKSPACE/voltha-system-tests voltha-test || true
         """
-        stopComponentsLog(logsDir: "$WORKSPACE/logs/ONOSHAScenarios", compress: true)
+        stopComponentsLogs(logsDir: "$WORKSPACE/logs/ONOSHAScenarios", compress: true)
       }
     }
 
@@ -186,7 +186,7 @@
         ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/dt-workflow/MultipleOLTScenarios"
       }
       steps {
-        startComponentsLog(logsDir: "$WORKSPACE/logs/ONOSHAScenarios")
+        startComponentsLogs(logsDir: "$WORKSPACE/logs/ONOSHAScenarios")
         sh """
         mkdir -p $ROBOT_LOGS_DIR
         if ( ${powerSwitch} ); then
@@ -196,7 +196,7 @@
         fi
         make -C $WORKSPACE/voltha-system-tests voltha-dt-test || true
         """
-        stopComponentsLog(logsDir: "$WORKSPACE/logs/ONOSHAScenarios", compress: true)
+        stopComponentsLogs(logsDir: "$WORKSPACE/logs/ONOSHAScenarios", compress: true)
       }
     }
 
@@ -208,13 +208,13 @@
         ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/dt-workflow/ErrorScenarios"
       }
       steps {
-        startComponentsLog(logsDir: "$WORKSPACE/logs/ErrorScenarios")
+        startComponentsLogs(logsDir: "$WORKSPACE/logs/ErrorScenarios")
         sh """
         mkdir -p $ROBOT_LOGS_DIR
         export ROBOT_MISC_ARGS="--removekeywords wuks -L TRACE -i functional -e bbsim -e notready -d $ROBOT_LOGS_DIR -v POD_NAME:${configFileName} -v workflow:${params.workFlow} -v KUBERNETES_CONFIGS_DIR:$WORKSPACE/${configBaseDir}/${configKubernetesDir} -v container_log_dir:$WORKSPACE -v OLT_ADAPTER_APP_LABEL:${oltAdapterAppLabel}"
         make -C $WORKSPACE/voltha-system-tests voltha-test || true
         """
-        stopComponentsLog(logsDir: "$WORKSPACE/logs/ErrorScenarios", compress: true)
+        stopComponentsLogs(logsDir: "$WORKSPACE/logs/ErrorScenarios", compress: true)
       }
     }
   }
