看起來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 –