前因
最近想要做一個github與jenkins自動流水線測試的集成,在google、baidu上的教程都是針對較舊的jenkins版本,這其中有一些坑,特此記錄一下。
目的
首先是配完github與jenkins集成后想要達到的目的:如下圖1、圖2所示,每當設定的分支有代碼push或有用戶提交pull request時,在服務器配置的jenkins會自動拉取遠程分支代碼并在服務器上跑單元測試、集成測試等,并能反饋測試結果等。
圖1. github pr 狀態顯示
圖2. github pr checks集成遠程jenkins
jenkins基本的安裝與配置
jenkins基本的安裝與配置網上資源很多,比如:http://blog.csdn.net/xlgen157387/article/details/50353317,這其中涉及jenkins安裝,服務器java、git、maven安裝、用戶設置等等。
jenkins與github集成
- 針對較低版本的jenkins,這方面的配置https://segmentfault.com/a/1190000004640060是正確的;針對較高版本的jenkins,構建觸發器選項已由“Build when a change is pushed to GitHub”變成了“GitHub hook trigger for GITScm polling”。
舊版本jenkins構建觸發器選項
新版本jenkins構建觸發器選項 - 另外webhook里填的post地址一定是http://your_jenkins_url/github-webhook/ ,不能去掉最后的那個“/”。
jenkins post url