diff --git a/test-salt-models-pipeline.groovy b/test-salt-models-pipeline.groovy
index 7190eb6..df58730 100644
--- a/test-salt-models-pipeline.groovy
+++ b/test-salt-models-pipeline.groovy
@@ -91,7 +91,7 @@
         }
 
         def infraYMLs = sh(script: "find ./classes/ -regex '.*cluster/[-_a-zA-Z0-9]*/[infra/]*init\\.yml' -exec grep -il 'cluster_name' {} \\;", returnStdout: true).tokenize()
-        def clusterDirectories = sh(script: "ls -d ./classes/cluster/*/", returnStdout: true).tokenize()
+        def clusterDirectories = sh(script: "ls -d ./classes/cluster/*/ | awk -F/ '{print \$4}'", returnStdout: true).tokenize()
 
         // create a list of cluster names present in cluster folder
         def infraList = []
@@ -103,6 +103,7 @@
         def commonList = infraList.intersect(clusterDirectories)
         def differenceList = infraList.plus(clusterDirectories)
         differenceList.removeAll(commonList)
+
         if(!differenceList.isEmpty()){
           common.warningMsg("The following clusters are not valid : ${differenceList} - That means we cannot found cluster_name in init.yml or infra/init.yml")
         }
@@ -113,6 +114,7 @@
 
         def branches = [:]
         def acc = 0
+        def group = 1
 
         for (int i = 0; i < infraYMLs.size(); i++) {
           def infraYMLConfig = readYaml(file: infraYMLs[i])
@@ -133,10 +135,11 @@
             parallel branches
             branches = [:]
             acc = 0
+            group++
           }
 
           branches[clusterName] = {
-            common.infoMsg("Running testing of salt model clusters - test group ${i}")
+            common.infoMsg("Running testing of salt model clusters - test group ${group}")
             build job: "test-salt-model-node", parameters: [
               [$class: 'StringParameterValue', name: 'DEFAULT_GIT_URL', value: defaultGitUrl],
               [$class: 'StringParameterValue', name: 'DEFAULT_GIT_REF', value: defaultGitRef],
