diff --git a/tag-git-repos.groovy b/tag-git-repos.groovy
index 52344d1..550a2a1 100644
--- a/tag-git-repos.groovy
+++ b/tag-git-repos.groovy
@@ -28,6 +28,9 @@
             def repos = GIT_REPO_LIST.tokenize('\n')
             def repoUrl, repoName, repoCommit, repoArray
             for (repo in repos){
+                if(repo.startsWith('#'))
+                  common.warningMsg("Skipping:" + repo.toString())
+                  continue
                 if(repo.trim().indexOf(' ') == -1){
                     throw new IllegalArgumentException("Wrong format of repository and commit input")
                 }
@@ -43,4 +46,4 @@
             throw e
         }
     }
-}
\ No newline at end of file
+}
diff --git a/test-drivetrain.groovy b/test-drivetrain.groovy
index 21d1a8a..559968b 100644
--- a/test-drivetrain.groovy
+++ b/test-drivetrain.groovy
@@ -34,10 +34,21 @@
 }
 
 def runJobOnJenkins(jenkinsUrl, userName, password, jobName, parameters){
+    def status = "null"
     def jenkinsDownCmd = "curl -OL ${jenkinsUrl}/jnlpJars/jenkins-cli.jar --output ./jenkins-cli.jar"
-    def runJobFromSaltMasterCmd = "java -jar jenkins-cli.jar -s ${jenkinsUrl} -noKeyAuth -auth admin:${password} build ${jobName} ${parameters} -s | grep -E 'SUCCESS|UNSTABLE'"
+    def runJobFromSaltMasterCmd = "java -jar jenkins-cli.jar -s ${jenkinsUrl} -noKeyAuth -auth ${userName}:${password} build ${jobName} ${parameters} -w"
+    def waitJobFromSaltMasterCmd = "curl -s -X GET '${jenkinsUrl}/job/${jobName}/lastBuild/api/json?tree=result' --user ${userName}:${password} | jq -r '.result'"
     salt.cmdRun(pepperEnv, "I@salt:master", jenkinsDownCmd)
     salt.cmdRun(pepperEnv, "I@salt:master", runJobFromSaltMasterCmd)
+    while (status == "null" || status.contains("parse error")){
+        status = salt.cmdRun(pepperEnv, "I@salt:master", waitJobFromSaltMasterCmd, false)
+        status = status.get("return")[0].values()[0].trim()
+        println("The job ${jobName} result is $status")
+        if(status == "FAILURE"){
+            throw new Exception("The job ${jobName} result is FAILURE.")
+        }
+        sleep(10)
+    }
 }
 
 timeout(time: 12, unit: 'HOURS') {
