前言:Jenkins 集成 Jira & GitLab ,这三个工具都需要安装相关插件,才能保证Jira和Jenkins之间、GitLab与Jenkins之间能够正常访问,实现Jenkins与JIRA、GitLab从源码编译、打包、发布到自动部署的全流程。
Jenkins & Jira
插件准备
jenkins中安装插件
- JIRA Integration for Jenkins
- Jira Issue Updater
- JIRA Pipeline Steps
- JIRA plugin
- JIRA Trigger Plugin
- JiraTestResultReporter plugin
jira中安装插件
- Jenkins Integration for JIRA Server
jenkins中配置
-
创建API token(jira中可使用api token,亦可使用用户名密码认证)
-
用户-设置-API Token-Add new Token(后续在jira中使用token时,可到此处复制token)
-
系统管理-系统设置-JIRA-Steps中添加JIRA sites并测试连接
-
Jira Trigger Configuration-输入jira路径及用户名密码
jira中配置
- 添加应用程序连接:应用程序-应用程序链接-输入jenkins地址-创建新链接
- 配置传出认证:点击编辑-传出认证-基本访问-输入jenkins用户名、密码
- 配置Jenkins configuration:应用程序-Jenkins configuration-Add Site-输入jenkins地址及用户名密码(亦可使用api token)
添加网络钩子:
设置-系统-WebHook-创建WebHook,填写详细信息并设置触发规则
其中url为http://{你的Jenkins地址}/jira-trigger-webhook-receiver/
例如我的地址为:https://jenkins.xxx.com.cn/jira-trigger-webhook-receiver/ , 若出现下图,则表示可以调通:
jenkins中构建job
构建触发器
-
Build when a comment is added to JIRA
- JQL filter:指定触发对象,project=卓越营销中台指的是jira中项目关键字为卓越营销中台的项目,若不填则默认所有(JQLfilter 包括:project、issue等)
- Comment pattern:jira备注中填写的comment,当用户在jira中添加指定备注时,会触发jenkins构建,如build this please
- Parameter mapping(参数映射)
-
Custom field (自定义字段)
2. Jenkins parameter:jenkins中的参数名称
2. Custom Field ID:访问https://jira.xxx.com.cn/rest/api/2/field 可得到 -
Issue attribute path(问题属性路径):jira issue中提取出得需要传给jenkins的属性值
-
-
Build when an issue is updated to JIRA
-
JQL filter:指定触发对象,project=卓越营销中台指的是jira中项目关键字为卓越营销中台的项目,若不填则默认所有(JQLfilter 包括:project、issue等)
-
Changelog matcher(更改日志匹配项):jira备注中填写的comment,当用户在jira中添加指定备注时,会触发jenkins构建
- JIRA field Matcher(Jira 字段匹配)
- JIRA field ID:可选择status/resolution 等
- Compare New value: 可选择对应属性的值,如status的值可以为FIXED/CLOSE 等
-
修改Jira Bug状态验证
-
comment验证
在关键字为"卓越营销中台"的项目中添加了备注信息:“build this please”,将触发jenkins构建,经验证,jira 提交置顶备注信息后,jenkins成功开始自动构建 -
issue update验证
选择status作为jenkins构建的触发项,即issue的最新状态为CLOSED时,将触发jenkins构建,经验证,jira 提交status状态为CLOSED后,jenkins成功开始自动构建