3

目前我們的基礎設施由Stash和Jenkins(也是JIRA,但它並不相關)組成。
工作流程如下:我在我的本地機器上提交代碼,將其推送到由Stash管理的我的存儲庫,爲主存儲庫創建拉取請求,代碼複審,合併,Jenkins進行新構建。我們的團隊希望將一些可配置的靜態代碼分析工具集成到此鏈中,並且如果靜態分析失敗,則不要讓合併請求。我們選擇Sonarqube作爲靜態分析工具,並決定通過預合併掛鉤將其與Stash集成。問題是我們不明白,如何以編程方式運行Sonarqube分析並檢查結果。
請讓我知道如果我們做錯了方式。如何將Sonarqube與Atlassian Stash集成

回答

5

嘗試Sonar for Stash插件(評估許可證)。我目前正在測試它在相同的工作流程和你:

  • 創建拉出請求
  • 一個詹金斯構建被觸發
  • 如果生成成功,並在靜態分析的閾值被滿足,拉入請求被授權

需要SonarQube 4.4或以上版本以獲取所有功能

+0

太好了。確切地說,我們正在尋找。 – mkrakhin 2015-03-31 13:25:47

1

您可以查看與構建斷路器插件一起使用的增量/預覽模式。我們已發佈a blog post entry about it,這應該有助於您找到自己的方式。

+0

讓我澄清我的理解。我們可以將sonarqube與jenkins綁定,如果在分析過程中發現一些錯誤,它會將構建標記爲失敗。但我仍然不明白如何防止在Stash中合併。 – mkrakhin 2014-12-10 09:43:19

+0

然後,這不是SonarQube方面的問題,而是Jenkins方面以及配置管道的方式。 – 2014-12-10 09:47:12