1. 程式人生 > 實用技巧 >Jenkins定時構建與輪詢SCM

Jenkins定時構建與輪詢SCM

一、區別

定時構建:

不管遠端程式碼分支上(Svn/Git)的程式碼有無更新,均執行定時構建任務

輪詢SCM:

遠端程式碼分支上(Svn/Git)只要有任何更新,則執行構建任務。

二、格式:* * * * *

  • 第一顆*表示分鐘minute:取值0-59,第幾分鐘執行
  • 第二顆*表示小時hour:取值0-23,第幾小時執行
  • 第三顆*表示日day:取值1-31,第幾日執行
  • 第四顆*表示月month:取值1-12,第幾月執行
  • 第五顆*表示星期week:取值0-7,每週第幾天執行

三、示例

#每半小時構建一次OR每半小時檢查一次遠端程式碼分支,有更新則構建
H/30 * * * *

#每兩小時構建一次OR每兩小時檢查一次遠端程式碼分支,有更新則構建
H H/2 * * *

#每天凌晨兩點定時構建
H 2 * * *

#每月15號執行構建
H H 15 * *

#工作日,上午9點整執行
H 9 * * 1-5

#每週1,3,5,從8:30開始,截止19:30,每4小時30分構建一次
H/30 8-20/4 * * 1,3,5

四、總結

過程中使用定時構建還是輪詢SCM需要看具體場景,下述列了兩個常用的場景,供參考。

#每天8點定時構建,不考慮程式碼是否有更新
H 8 * * *

#工作日,每天8點定時構建,9-20點期間每30分鐘檢查一次,有程式碼更新則構建一次
定時構建:H 8 * * *
輪詢SCM:H/30 9-20 * * 1-5

配置完成後可以點選應用,檢查配置是否正確(配置不合法會有提示)或到https://crontab.guru進行測試驗證。