Phabricator集成Jenkins實現自動化構建

phabricator-jenkins-plugin

phabricator-jenkins-plugin是Uber開發的讓Phabricator支持通過Jenkins進行自動化構建的工具,通過引入該工具,我們可以很容易實現如下相關功能:

  • 提交代碼評審之後自動觸發構建測試,並且把構建測試結果附加到評審單子裏面;
  • 代碼通過arc land命令合併並推送到遠程分支之後,可以自動觸發項目構建,特別的,如果項目是jar包項目,可以在Jenkins構建的Job中添加deploy到私服的步驟;

整體流程如下:

其中HeraldPhabricator提供的一個應用,這個應用裏面可以配置各種動作節點的觸發規則,如果與觸發規則匹配,則執行該應用裏面配置的動作。

HarbormasterPhabricator的構建工具,可以通過這個工具向第三方構建工具如Jenkins發起構建請求。

發起評審觸發點:如上圖,在通過arc diff發起代碼評審的時候,會觸發Herald配置的規則:

規則觸發動作:Differential Revisions(審查動作)

When all of these conditions are met:

Repository projects include any of 支付組
Take these actions every time this rule matches:

Run build plans: Plan 3 提交代碼審查觸發自動化構建測試.

規則的執行動作是調用Harbormaster向Jenkins發起構建測試請求,在構建測試完成之後,會把構建結果附加到審查單子中,效果如圖:

提交代碼審查觸發點:在審查通過把代碼推送到Phabricator代碼倉庫的時候,會觸發Herald配置的規則:

規則觸發動作:Commit,詳細規則:

When all of these conditions are met:

Repository projects include any of 支付組
Take these actions every time this rule matches:

Run build plans: Plan 2 提交代碼觸發自動化構建.

如果推送的倉庫是屬於支付組的,則向Jenkins發起構建請求,構建完成之後,會向Commit代碼的單子添加構建說明:

首次發表於:Phabricator集成Jenkins實現自動化構建

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章