我配置了 Jenkins 构建(项目使用 Java、Maven、JUnit)。根据单元测试失败的 Maven 阶段,我想将构建标记为红色、黄色或绿色:
编译错误:红色
Maven阶段“测试”中的失败:红色
Maven 阶段“集成测试”中的失败:黄色
成功:绿色
我该怎么做?
我配置了 Jenkins 构建(项目使用 Java、Maven、JUnit)。根据单元测试失败的 Maven 阶段,我想将构建标记为红色、黄色或绿色:
编译错误:红色
Maven阶段“测试”中的失败:红色
Maven 阶段“集成测试”中的失败:黄色
成功:绿色
我该怎么做?
您可以使用诸如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
}
}
}