構建觸發器指的是在什麼條件下或者是什麼時候去觸發項目的構建,在前面我們都是手動點擊Build Now
去構架項目。而事實上Jenkins內置了4種構建觸發器,可以讓我們自動或者說半自動的去觸發項目的構建,4種構建觸發器分別是:
- 觸發遠程構建
- 其它工程構建後觸發
- 定時構建
- 輪詢SCM
1. 觸發遠程構建
觸發遠程構建是指通過一個遠程地址來觸發項目的構建,通常用於在另一個系統通過鏈接來遠程發起項目的構建。
觸發遠程構建需要一個身份驗證令牌,比如我們這裏寫成remote-build
。那麼我們就可以通過http://192.168.1.20:8080/job/declarative-demo/build?token=remote-build
遠程觸發構建。
注意:身份驗證令牌最好是經過加密算法加密。
2. 其它工程構建後觸發
其它工程構建後觸發是指一個工程在另外一個工程構建後自動觸發構建。這種構建方式通常適用於兩個工程之前有關聯關係,後者必須是基於前者進行觸發構建的。比如A和B兩個工程,B項目在A項目構建完成之後開始構建。
3. 定時構建
定時構建是指按照設定的週期進行構建,比如一小時構建一次、一天構建一次或者每天凌晨2點自動構建等等。
定時字符串從左往右分別爲:分 時 日 月 周
。舉例:
1、每30分鐘構建一次:H代表形參 H/30 * * * *
2、每2個小時構建一次: H H/2 * * *
3、每兩小時一次,每個工作日上午9點到下午5點(也許是上午10:38,下午12:38,下午2:38,下午
4:38) H H(9-16)/2 * * 1-5
4. 輪詢SCM
輪詢SCM是指掃描代碼倉庫的代碼是否有變更,如果有變更就觸發項目構建。
需要注意的是:設置該構建觸發器,Jenkins會定時掃描整個項目的代碼,增加系統的開銷,不建議使用。