我正在运行许多静态分析工具,我想跟踪从构建到构建的结果。例如,如果对分支的提交增加了安全漏洞的数量,我想向提交者发送电子邮件。我知道有像 Sonar 和 Analysis Collector 这样的插件,但它们并没有涵盖我想要的所有分析领域,而且它们似乎没有能力根据构建趋势触发操作(如果我错了,请纠正我)。
问问题
340 次
2 回答
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 插件,该插件允许您在发生错误时向提交者发送电子邮件失败。
于 2013-11-02T07:05:30.383 回答
0
我会推荐SonarQube工具,它就像你描述的那样。您提到您已经看过它,但也许您错过了Notifications 功能或Build Breaker Plugin。还有更多以 Jenkins 集成为中心的 SonarQube 功能。SonarQube 可以免费使用。
如果您仍然缺少某些东西,可能值得专门询问 SonarQube 如何涵盖该方面。只是我的两分钱。
于 2013-11-07T10:13:00.353 回答