我已经配置了Jenkins构建(项目使用Java,Maven,JUnit)。根据单元测试失败的Maven阶段,我想将构建标记为红色,黄色或绿色:
编译错误:红色
Maven阶段的失败"测试" :红色
Maven阶段的失败"整合测试" :黄色
成功:绿色
我该怎么做?
答案 0 :(得分:1)
您可以使用类似Jenkins Text Finder插件的内容来解析特定模式的日志。这应该适用于基本需求。
如果你需要更复杂的东西(听起来像你),你可以查看Groovy Post Build插件并使用Groovy脚本执行此操作。该脚本仍将解析控制台日志,但为您提供了更多的灵活性,并允许您将自定义消息添加到构建页面。
以下内容可能会起作用:
class ChangeResult {
static def run(manager) {
if(manager.logContains("Some compilation error")) {
manager.addWarningBadge("Compilation Error")
manager.createSummary("warning.gif").appendText("Build failed due to compilation error", false, false, false, "red")
manager.build.@result = hudson.model.Result.FAILURE
}
if(manager.logContains("Some integration error")) {
manager.addWarningBadge("Integration Error")
manager.createSummary("warning.gif").appendText("Build unstable due to integration error", false, false, false, "red")
manager.build.@result = hudson.model.Result.UNSTABLE
}
}
}