4
我有一个管道扫描编译器警告,最近注意到发布命令无法执行由于脚本安全批准而在管理Jenkins中定义的groovy脚本。 投诉是针对:Jenkins管道扫描编译器警告自定义分析器被阻止
Groovy的沙箱拒绝解析器GHS多无裹解析脚本:脚本不得使用方法java.util.regex.MatchResult中组INT。您需要在脚本审批UI中手动批准呼叫。
所以我批准它,但是它会随着每一次构建而回来。这只会影响我的自定义分析器。
我是否错误地使用了自定义分析器,或者这会成为问题脚本安全性问题?
解析器正则表达式:
^"+(.*)".*line\s(\d*):.*(error|warning)\s*#(.*):\s*(.*)$
分析器脚本:
import hudson.plugins.warnings.parser.Warning
import hudson.plugins.analysis.util.model.Priority
String fileName = matcher.group(1)
String lineNumber = matcher.group(2)
String category = matcher.group(3)
String typeID = matcher.group(4)
String message = matcher.group(5)
if(category == "warning"){
return new Warning(fileName, Integer.parseInt(lineNumber), typeID,
category, message, Priority.NORMAL);
}
else if(category == "error"){
return new Warning(fileName, Integer.parseInt(lineNumber), typeID,
category, message, Priority.HIGH);
}
更新:我发现正被警告解析器here
我产生我得到的错误,我相信找不到为什么或者我能做些什么来阻止它抛出异常。