2016-11-24 93 views
0

我正在使用jenkins for ci的項目。我必須驗證Github PR並更新多個檢查。我正在使用Github Pull Request Builder插件。 1.掉毛代碼 2.運行單元測試 3.代碼覆蓋使用Jenkins獲取Github Pull Request的Multiples檢查

欲github上不同地顯示的3個狀態檢查?儘管Github有3種構建報告的狀態,但github只顯示「1個未決檢查」或「1個狀態檢查已成功完成」。 enter image description here

我沒有找到適當的解決方案,而不能開發或腳本的功能。有沒有插件或一種方法來實現這一點。

我想這一點只使用一個詹金斯工作

我曾嘗試編寫shell腳本來更新檢查在github上 其成功的消息,但效應初探公關不與狀態更新。

curl -XPOST -H "Authorization: token XXXXXXXXXXXXXXXXXXXXXXXXXXXX" https://api.github.com/repos/org/reponame/statuses/$(git rev-parse HEAD) -d '{ 
    "state": "success", 
    "target_url": "${BUILD_URL}", 
    "description": "All tests were passed!", 
    "context": "jenkins-ci-unit-test" 
    }' 

響應

% Total % Received % Xferd Average Speed Time Time  Time Current 
05:15:26         Dload Upload Total Spent Left Speed 
05:15:26 
    0  0 0  0 0  0  0  0 --:--:-- --:--:-- --:--:--  0 
100 1528 100 1350 100 178 8318 1096 --:--:-- --:--:-- --:--:-- 8333 
05:15:26 { 
05:15:26 "url": "https://api.github.com/repos/org/reponame/statuses/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", 
05:15:26 "id": 333333333, 
05:15:26 "state": "success", 
05:15:26 "description": "All tests were passed!", 
05:15:26 "target_url": "http://xxx.xxxxx.com/job/job1", 
05:15:26 "context": "jenkins-ci-unit-test", 
05:15:26 "created_at": "2016-11-29T10:15:26Z", 
05:15:26 "updated_at": "2016-11-29T10:15:26Z", 
05:15:26 "creator": { 
05:15:26 ....... 
05:15:26 } 
05:15:26 } 

Current check in PR

+0

這並不完全清楚您要在此實現的目標。你能否提供一個你目前的拉式請求狀態檢查是什麼樣子的截圖? – kfb

+0

共享工作區的三個作業會更容易。您可以編寫一個腳本,在每次通過cURL檢查後返回三次狀態檢查。只是使上下文不同。 https://developer.github.com/v3/repos/statuses/#create-a-status – osowskit

回答

1

嘗試使用

git rev-list --max-count=2 HEAD | tail -n 1 

,而不是

git rev-parse HEAD 

所以它需要以前的提交值

相關問題