本地开发环境,提交代码到运程gitlab,GITLAB通过webhook,触发jenkins自动打包部署,将最新的变动自动打包推送到远程服务器。
Jenkins配置webhook
1、登录jenkins,进入管理界面,如下图:
输入 hook ,进入安装
2、进入部署项目配置
找到Build Triggers,进行webhook Trigger配置
注意:
自定义参数:如果需要获取gitlab webhook请求Reqbody,或者请求参数,作触发条件
- Post content parameters (JSONPath)
- Variable ,配置自定义变量名,如:name
- Expression ,从JSONPath获取属性,如$.project.name ,$.表示gitlab 请求方法体,project.name表达 请求方法体中的对应属性
Gitlab call request body 如: $.project.name 就能获取内容中的"project"
{
"project": {
"name": "project",
}
}
- Header parameters
- Request parameters
然后,再filter option 配置,匹配条件,才能触发
Optional filter : (从gitlab获取属性,作为条件触发)
- Expression :正则表达式 值 :^xxxx$
- Text : 自定义的name : $name
条件 $name ==^xxxx$
3、gitlab登录
找到Integrations Settings ,配置 webhook
- Url :http://username:password@jenkinsURL/generic-webhook-trigger/invoke
- Trigger 自定义选择
- Push events
- Merge Request events
保存配置,点击test,就能触发Jenkins。