2013-11-01 53 views
3

我正在運行一些靜態分析工具,並且想要跟蹤構建的結果。例如,如果對分支的提交增加了安全漏洞的數量,我想發送一封電子郵件給提交者。我知道有像Sonar和Analysis Collector這樣的插件,但它們並不涵蓋我想要的所有分析領域,它們似乎也沒有能力根據構建趨勢觸發操作(如果我錯了,請糾正我的錯誤)。我如何跟蹤Jenkins構建之間的值(靜態分析)

+0

嗨,如果其中一個答案對您有幫助,請將其標記爲已接受。謝謝。 – twasbrillig

回答

1

您可以使用Groovy的Postbuild插件:

https://wiki.jenkins-ci.org/display/JENKINS/Groovy+Postbuild+Plugin

它能讓您從當前版本的buildlog數據(如檢測到的漏洞的數量)與num_vul = manager.getLogMatcher(regexp)

和比較,以前的通過從他們的構建日誌中提取信息來構建,例如:

currentBuildNumber = manager.build.number 
manager.setBuildNumber(currentBuildNumber - 1) 
prev_num_vul = manager.getLogMatcher(regexp) 

然後,如果漏洞的數量增加了,我會打電話給manager.buildFailure(),這會將構建狀態設置爲FAILURE,然後讓下一個PostBuild步驟進入Email-ext插件,這允許您在發生故障時向提交者發送電子郵件。

0

我會推薦SonarQube工具,它只是你所描述的。你提到你已經看過它,但也許你錯過了Notifications featureBuild Breaker Plugin。還有更多以Jenkins集成爲中心的SonarQube功能。 SonarQube可以免費使用。

如果您仍然缺少某些東西,可能值得具體詢問SonarQube如何涵蓋該方面。只是我的兩分錢。

+0

謝謝,通知功能看起來很有用,但我正在尋找一種更通用的跟蹤方法,因爲SonarQube在其覆蓋範圍上有一些漏洞。不過,看起來他們有一些非常積極的興趣,所以希望有些漏洞會被填補。 – fourthnen