声纳分析是根据集中定义的策略检查代码合规性的一种很好的方法。这就是为什么我想使用一个带有Blocker的配置文件,一个关键的规则来表示一个损坏的构建。
我正在使用Jenkins进行构建,并调用SonarRunnerBuilder来对项目的每晚构建进行标准分析。
要实现我概述的功能,最好是我可以运行分析,检查违规结果(最好不要将它们发送到Sonar服务器),如果有任何违规,则使构建失败。到目前为止,我还没有找到使用谷歌和查看SonarRunner源代码的方法。
我所考虑的是一种变通方法。我会实现一个收集冲突的Decorator,当装饰到达项目资源时,我会抛出一个RuntimeException来中断分析。这反过来会导致构建失败。
这样行得通吗?有没有更好的方法来实现这一点?
发布于 2015-09-24 20:59:07
您正在寻找的似乎就是build breaker plugin提供的功能。它依赖于质量门配置来检测当前分析中的违规(现在称为问题)何时需要破坏整个构建。
请考虑在SonarQube 5.2中不支持此插件。从技术上讲,SonarQube架构的深刻变化使得它不可能提供相同的功能。从哲学上讲,这个插件与SonarQube想要提供的体验不匹配。
尽管如此,覆盖相同用例的另一个解决方案很可能会在未来的SonarQube版本中提供,但这还没有定义。
https://stackoverflow.com/questions/32753463
复制相似问题