3

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

4

2 回答 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 回答