jenkins構建觸發器配置目錄.png
一、代碼提交—>gitlab自動通知jenkins構建
1、創建一個測試新任務
需要的插件有:GitLab 和 Gitlab Hook
gitlab觸發器1.png
配置任務 GIT 地址:
gitlab觸發器2.png
配置自動構建:
gitlab觸發器3.png
注:Allowed branches :
Allow all branches to trigger this job #允許所有分支觸發此作業
Filter branches by name #按名稱過濾分支
Include :dev #允許觸發構建的分支,dev分支提交會自動構建
Exclude:master #排除觸發構建的分支,此時master分支提交不會自動構建Filter branches by regex #通過正則表達式過濾分支
Source Branch Regex: #源分支正則表達式
Target Branch Regex:.*dev #目標分支正則表達式,允許觸發構建的dev分支Filter merge request by label #按標簽過濾合并請求
Include: #允許觸發構建的標簽
Exclude: #排除觸發自動構建的標簽
添加構建操作:
gitlab觸發器4.png
保存配置!
2、Gitlab 配置項目連接 Jenkin
gitlab觸發器5.png
3、提交 Gitlab 項目的 Master 分支測試自動構建
gitlab觸發器6.png
4、查看Jenkins是否構建
此時會過來查看 Jenkins:
gitlab觸發器7.png
可以看到觸發構建成功,而且可以看到是誰提交了代碼觸發的構建!
二、jenkins輪詢SCM 構建
按一定時間輪詢檢測gitlab是否有代碼更新。
1、語法說明
該字段遵循cron的語法(略有不同)。具體來說,每行包含5個用TAB或空格分隔的字段:
分鐘小時DOM DOW
分鐘 | 一小時內的分鐘數(0–59) |
---|---|
小時 | 一天中的時間(0–23) |
DOM | 一個月中的某天(1-31) |
月 | 月(1–12) |
DOW | 星期幾(0–7),其中0和7是星期日。 |
要為一個字段指定多個值,可以使用以下運算符。按照優先順序
-
*
指定所有有效值 -
M-N
指定值范圍 -
M-N/X
或*/X
按X的間隔逐步達到指定范圍或整個有效范圍 -
A,B,...,Z
枚舉多個值
例子:
#每十五分鐘(也許在:07,:22,:37,:52)
H / 15 * * * *
#在每小時的前半部分每十分鐘(三遍,也許在:04,:14,: 24)
H(0-29)/ 10 * * * *
#每隔一個小時的45分鐘,每兩小時一次,從上午9:45開始,在每個工作日的下午3:45結束。
45 9-16 / 2 * * 1-5
在上午9點和下午5點每個工作日之間每隔兩小時時隙#一次(或許在上午10時38分,下午12點38,下午2點38分,下午4點38)
HH (9-16)/ 2 * * 1-5
#每月的1號和15號每天一次,12月
HH 1,15 除外1-11 *
2、使用測試
輪詢構建觸發器.png