我正在慢慢潜入詹金斯的管道groovy dsl . 我试图找出如何创建声纳的步骤并反映Jenkins构建服务器中的质量门消息 .
在这一刻,我为声纳定义了以下步骤:
stage ('sonar') {
mvn "-Dsonar.lang.patterns.jsp=notverified -Dsonar.host.url=http://sonar.server.example:9494 org.sonarsource.scanner.maven:sonar-maven-plugin:3.3.0.603:sonar -Dsonar.login=key
}
现在,当Maven获得:
[INFO] Quality gate status: WARN
它没有在 OK
或 Error
上设置它,但是使构建步骤也是 WARN
(所以不要使用漂亮的绿色或红色代替黄色的漂亮颜色) . 我一直在挖掘文档,但据我所知,没有真正的方法可以以任何方式使用一个二进制文件进入WARN状态 . 在任何一个想法之间都有注意到吗?
1 回答
根据CloudBees support,您可以通过自己设置
currentBuild.result
来设置构建结果,因此,要获得指示不稳定状态的黄色球(单元测试失败),您可以执行以下操作:现在,当Sonar质量门状态为“WARN”时,您希望这样做 .
他们document how to do it:首先用
withSonarQubeEnv('Your Sonar server')
包裹你的声纳执行,然后你等待服务器用waitForQualityGate()
的结果回叫你:我没有测试过这个,我有一个过时的版本,我计划在有空的时候升级,使用比上面复杂10倍的手动脚本方法,我想摆脱它并用这个解决方案替换它 . 尚未完成,但我正在分享我收集的笔记 .