Я понимаю, что для Дженкинса требуется, чтобы все переменные были сериализованы, но я сталкиваюсь с проблемой и не понимаю, почему. Я довольно новичок в Groovy / Jenkins. Вот мой код
@NonCPS
String myFunction(){
def parsed = new XmlSlurper().parse("${workspace}/tmp/TESTS-myTest.xml")
println "${parsed} is this"
//def errorMessage = parsed.testsuite.testcase.error.@message
//def testCases = parsed.testsuite.testcase
println "We found 0 errors"
parsed.testsuite.testcase.each { def device ->
msgToSlack= "Name of phone is: ${device.@name}" + " " + "ran for ${((device.@time.toInteger())/60)} Minutes"
println msgToSlack
//"View at ${device}"
//println device.error.@message
}
return msgToSlack.toString()
}
В этой функции я выполняю синтаксический анализ XML-файла, который я получаю после керлинга в API и получения результатов через webhook. Затем я хочу проанализировать документ, чтобы получить определенные значения для отправки через slack, эта функция работает нормально, но когда я вызываю функцию, я получаю
in field groovy.lang.GString.values
in object org.codehaus.groovy.runtime.GStringImpl@684e4781
in field groovy.lang.Closure.delegate
in object org.jenkinsci.plugins.workflow.cps.CpsClosure2@66757440
in field org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.closures
in object org.jenkinsci.plugins.workflow.cps.CpsThreadGroup@16a73957
in object org.jenkinsci.plugins.workflow.cps.CpsThreadGroup@16a73957
Caused: java.io.NotSerializableException: groovy.util.slurpersupport.Attributes```
Any information leading me to the right direction would help! Thanks so much.