進度條

利用 Github push 驅動 Jenkins 執行 repo 指令 [Public]

更新日期:

1.  安裝完 Jenkins (於 Ubuntu 上 安裝 install Jekins)

2. 建立 Github repo,測試的所以設定 public 即可,.gitignore 要小心,測試可以不先不要擺他。

3. 專案下載下來,在根目錄產生 Jenkinsfile,沒有副檔名

4. 裡面填上

執行成功會產生 /tmp/Start.txt 與 /tmp/End.txt

 

5 整個 push 到 repo

 

6. 進入 repo -> settings -> webhooks ->  add webhook

Payload URL 填入 jenkins 的 url, 本地端無法被訪問,除非用跳板。

填入 http://<domain_或是_ip:port>/github-webhook/

 

其他如果你知道要填什麼也可以改,不然就用預設。

按下 add webhook 按鈕

 

這樣 repo 收到 push 就會往該 url 發送 trigger event。

 

 

7. 進入 Jenkins -> new item

填寫 item 名稱,你喜歡的即可

選 pipeline > 按下 ok

 

8.  打勾 GitHub hook trigger for GITScm polling

 

9. Pipeline 選 

Repository URL 填 clone 的那個 url

例如:https://github.com/<your_name>/<your_project_name>.git

 

Branch Specifier (blank for 'any')  填 branch

如果你是自己 git 產生的專案預設是 master

如果你是 github 產生的專案預設是 main 

(master 這個字眼 github 認為政治不正確。)

 

 

10. 按下 save

 

 

11. 進到該 item 裡面,我們的設定不會自動 build,所以左邊按一下 build now 做第一次的執行。

成功的話 /tmp/Start.txt 和 /tmp/End.txt 會產生出來

 

12. 回到 Jenkinsfile,改成

 

13. commit 後 push,就會驅動 github 的 webhook,然後驅動 Jenkins

 

14. 成功的話,會多一個 /tmp/Running.txt