看起来Build Breaker Plugin不再与SonarQube 5.2兼容。如果Sonar门没有完成或者是否有计划将Build Breaker插件更新到5.2,是否还有其他方法可以使VSO构建失败?使用SonarQube 5.2构建断路器插件
回答
没有(现在)这将打破建立在质量门我以前不传递SonarQube 5.2任何插件。
但SonarQube 5.3+可以再次使用Build Breaker插件。
从邮件列表:
Breaking the build in SonarQube 5.2(21月/ 10月/ 2015年)
Fabrice Bellingrad:本Build Breaker Plugin 将无法使用SQ 5.2+。这个想法是开发一个核心特性 来回答此插件以前的用例。这是 就是我们所说的“如果”功能=> https://jira.sonarsource.com/browse/SONAR-6763
这个问题SONAR-6763计划于SonarQube 6.X。
请注意,该发布日期可能会移动。 :) –
这非常令人失望。我们依靠这个作为我们持续集成的一部分。是否有理由删除有用的功能? – jbarrus
我和你在一起。因此,我们不会升级到5.2。在构建持续集成平台时,这是一项必备功能! –
在SonarQube 5.2,我们发现在Web服务/api/events的使用替代方式。
请求例如:
https://<sq-host>/api/events?categories=Alert&resource=<project_key>
响应例如:
<events>
<event>
<id>50411</id>
<name>Red (was Green)</name>
<resourceKey>project_key</resourceKey>
<category>Alert</category>
<date>2015-09-29T22:38:44+0200</date>
<description>New Critical issues > 0 since previous analysis (2015 Sep 23), New Major issues > 0 since previous analysis (2015 Sep 23), New issues > 0 since previous analysis (2015 Sep 23)</description>
</event>
....
</events>
检测项目的红色状态:
要验证红色状态,您需要找到event
,并在events
列表中找到最高id
值,然后验证此事件的name
从Red
开始,如果您发现它,则需要构建失败。
这样的验证可以在SQ步骤后使用额外的命令行步骤在CI服务器上完成,也可以从构建自动化系统(如Maven或Gradle)完成。
由于缺乏空闲时间,我们还没有在我们的项目中实施这种解决方法,但我们将在不久的将来做到这一点。
提出的解决方案应仅作为解决方法,直到问题SONAR-6763将完成。
附加命令行步骤始终在* Sonar之前运行,因此无法使用。 – mirabilos
随着SonarQube 5.3引入了一个新的Quality Gates Web Service,可以调用并用于打破构建。
打破CI建立一个失败的质量门,使用WS API调用在循环中等待,直到处理完毕后,再检查质量门Web服务:
- 呼叫分析的ceTaskUrl和检查“状态”值:
- PENDING或IN_PROGRESS - 再次检查后
- 失败或取消 - 打破建立?
- 的成功 - 前进
- 通话质量门web服务状态
我还添加了一个issue to enhance the VSTS Tasks with an option to automatically call this service。
更新:一个recent PR添加了这个功能,将VSTS任务(尚未公布)
你只说“可以使用”,但请描述* how *。 – mirabilos
请参阅我提到的[打破CI构建](http://docs.sonarqube.org/display/SONAR/Breaking+the+CI+Build)或[VSTS任务实现](https:// github。 com/Microsoft/vso-agent-tasks/tree/master/Tasks/SonarQubePostTest)为例。我不认为声呐发布了关于这方面的进一步文件。否则,你应该直接询问他们是否需要进一步的帮助。 –
您现在可以使用版本SonarQube版本5.3+使用SonarQube Build Breaker Plugin。
- 1. 在现有项目中应用sonarqube构造断路器插件
- 2. SonarQube 5.2,LDAP插件1.5:com4j.ComException
- 3. SonarQube构建断路器插件:报告处理没有成功完成:失败
- 4. SonarQube 5.2自定义插件产生NoClassDefFoundError
- 5. 构建稳定性插件Teamcity SonarQube
- 6. Laravel 5.2查询构建器的插入方法不工作使用Laravel 5.2
- 7. SonarQube 5.2:java.lang.NoSuchMethodError:
- 8. 由于SonarQube 5.2
- 9. Liferay服务构建器5.2
- 10. Sonarqube 5.2 SQLServer连接
- 11. SonarQube安装 - Github身份验证插件失败,“PKIX路径构建失败”
- 12. SonarQube 5.2/LDAP 1.5.1插件:admin无法更改密码
- 13. 如何使用javaee-api为SonarQube构建maven构建?
- 14. 如何保护SonarQube 5.2?
- 15. 添加构建路径到Eclipse插件
- 16. 使用gradle sonarqube插件执行错误
- 17. Sonarqube TFS构建忽略的文件
- 18. Sonarqube插件:从MeasureComputer
- 19. SonarQube LDAP插件StartTLS
- 20. SonarQube的C插件
- 21. Sonarqube 5.2,LDAP插件1.5:用户在下次登录时失去权限?
- 22. SonarQube TF vNext构建失败
- 23. Sonarqube的TFS上构建
- 24. 无法构建SonarSource/sonarqube
- 25. Jenkins警告插件和SonarQube扫描器
- 26. SonarLint不使用来自插件的SonarQube服务器规则
- 27. 在RHEL6上构建GCC 5.2
- 28. SonarQube插件在服务器启动后创建新规则
- 29. findsecbugs声纳插件maven构建失败
- 30. 使用XCode构建firebreath插件
这一点是在SonarQube的谷歌组上讨论的:https://groups.google.com/d/msg/sonarqube/gR07SqqpAyQ/ulN2wdO4EQAJ –