Fixed gating pipeline againL

Change-Id: I40b6001e17068ea7d64dc49e76da07275c7aff1d
diff --git a/gating-pipeline.groovy b/gating-pipeline.groovy
index dd39609..aa5cd91 100644
--- a/gating-pipeline.groovy
+++ b/gating-pipeline.groovy
@@ -14,9 +14,9 @@
     // test if change is not already merged
     ssh.prepareSshAgentKey(CREDENTIALS_ID)
     ssh.ensureKnownHosts(GERRIT_HOST)
-    def gerritChangeStatus = _getGerritChangeStatus(GERRIT_NAME, GERRIT_HOST, GERRIT_CHANGE_NUMBER)
+    def gerritChange = _getGerritChangeStatus(GERRIT_NAME, GERRIT_HOST, GERRIT_CHANGE_NUMBER)
     stage("test") {
-      if (gerritChangeStatus != "MERGED" && !SKIP_TEST.equals("true")){
+      if (gerritChange.status != "MERGED" && !SKIP_TEST.equals("true")){
         wrap([$class: 'AnsiColorBuildWrapper']) {
           def gerritProjectArray = GERRIT_PROJECT.tokenize("/")
           def gerritProject = gerritProjectArray[gerritProjectArray.size() - 1]
@@ -41,7 +41,7 @@
       }
     }
     stage("submit review"){
-      if(gerritChangeStatus == "MERGED"){
+      if(gerritChange.status == "MERGED"){
         common.successMsg("Change ${GERRIT_CHANGE_NUMBER} is already merged, no need to gate them")
       }else{
         ssh.agentSh(String.format("ssh -p 29418 %s@%s gerrit review --submit %s,%s", GERRIT_NAME, GERRIT_HOST, GERRIT_CHANGE_NUMBER, GERRIT_PATCHSET_NUMBER))
@@ -62,15 +62,11 @@
   return Jenkins.instance.items.find{it -> it.name.equals(jobName)}
 }
 
-@NonCPS
 def _getGerritChangeStatus(gerritName, gerritHost, gerritChange){
    def ssh = new com.mirantis.mk.Ssh()
    def output = ssh.agentSh(String.format("ssh -p 29418 %s@%s gerrit query --format=JSON change:%s", gerritName, gerritHost, gerritChange))
-   def jsonSlurper = new JsonSlurper()
-   def gerritChangeObject = jsonSlurper.parseText(output)
-   if(gerritChangeObject["status"]){
-     return gerritChangeObject["status"]
-   }else{
-     return "ERROR"
-   }
+   // JsonSlurper returns a non-serializable LazyMap, so copy it into a regular map before returning
+   def m = [:]
+   m.putAll(new JsonSlurper().parseText(output))
+   return m
 }
\ No newline at end of file