如何在Jenkins Builds(静态分析)之间跟踪值

时间:2013-11-01 20:53:00

标签: jenkins static-analysis

我正在运行许多静态分析工具,我想跟踪构建到构建的结果。例如,如果对分支的提交增加了安全漏洞的数量,我想向提交者发送一封电子邮件。我知道有像Sonar和Analysis Collector这样的插件,但是它们并没有覆盖我想要的所有分析领域,而且它们似乎没有能力根据构建趋势触发操作(如果我错了,请纠正我) )。

2 个答案:

答案 0 :(得分:1)

您可以使用Groovy Postbuild插件:

https://wiki.jenkins-ci.org/display/JENKINS/Groovy+Postbuild+Plugin

它允许您使用num_vul = manager.getLogMatcher(regexp)从当前版本的构建日志中提取数据(例如检测到的漏洞数量)

并将其与之前的版本进行比较,方法是从构建日志中提取信息,例如:

currentBuildNumber = manager.build.number
manager.setBuildNumber(currentBuildNumber - 1)
prev_num_vul = manager.getLogMatcher(regexp)

然后,如果漏洞数量增加,我会调用manager.buildFailure()将构建状态设置为FAILURE,然后将下一个PostBuild步骤设置为Email-ext插件,允许您发送电子邮件在发生故障时给提交者。

答案 1 :(得分:0)

我会推荐SonarQube工具,它可以完成你所描述的工作。你提到你已经看过了,但也许你错过了Notifications featureBuild Breaker Plugin。有更多的SonarQube功能以Jenkins集成为中心。 SonarQube可以免费使用。

如果您仍然遗漏某些内容,可能值得专门询问SonarQube如何涵盖这一方面。只是我的两分钱。