Jenkins之配置GitHub-Webhook


前提條件1: 運行Jenkins的機器需要安裝git,並且git.exe文件在系統的環境變量里面,或者手動在 Manage Jenkins -> Global Tool Configuration -> Git -> Add git中配置。git用來從從github上拉取代碼,
前提條件2: 有一個在GitHub上存在的Repository。
前提條件3: Python.exe已經配置在環境變量里面。

1. 在jenkins上一個job,類型為 Freestyle project。

2. 在項目的配置中,Source選擇 git,並輸入Reponsitory的url。

備注:
Creentials: 添加github賬號,添加的賬號需要對repository有寫的權限。

Branches to build: 選擇一個監聽的branch

3. Build選擇 Execute Windows batch command。

輸入command

python JenkinsTest.py

4. Build now,保證能build成功,可以在Console Output中查看詳細信息。


5. 在項目的配置中,選擇構建觸發器 "GitHub hook trigger for GITScm polling"。

6. 啟動ngrok服務,獲得本機8080端口的面向外網的url。

理解: 因為Jenkins的地址是http://localhost:8080,這個地址只能在本機訪問,GitHub是訪問不到這個網址的,所以要把本機的8080端口也能讓外網訪問的到暴露給外網。
通過這個網址下載ngrok: https://ngrok.com/download

打開ngrok.exe文件,運行 ngrok.exe http 8080,暴露出8080端口號。
注意: 這個只能8小時之內有效。

得到url: http://d01e74e1.ngrok.io

7. 在Jenkins中設置Jenkins的url,這個url是步驟6中得到的。

這一步也可以通過Override Hook URL來設置。

8. GitHub項目設置Webhooks

在Payload url中輸入:http://d01e74e1.ngrok.io/github-webhook/
注意: 一定要有后面的 /github-webhook

9. Push一個commit測試

10. 在Github上查看webhook的狀態

11. 此時Jenkins就應該產生一個build,在console里面查看log信息。


參考:

  1. Jenkins+Github: We couldn’t deliver this payload: Couldn't connect to server
  2. Jenkins+Github持續集成


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM