介绍
Jenkins 是一个独立的开源软件项目,是基于 Java 开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。它可以用于自动化运行各种任务,如构建,测试和部署软件。
使用 Leangoo 集成 Jenkins 是在 Leangoo 中驱动 Jenkins Job 的构建,并实时显示 Job 的构建结果。在 Leangoo 中将卡片拖到配置好的构建列中,会向 Jenkins 服务器发送请求。Jenkins 接收到 Leangoo 的请求后,进行构建,并通过 Notification 插件将构建结果发送到 Leangoo。
操作步骤
在 Leangoo 中配置 Jenkins 触发
进入企业版看板(通常为 Sprint Backlog 看板),依次点击
菜单
,Jenkins
打开 Jenkins 配置模态框2. 填写 Jenkins 服务器 URL
- URL 为 Jenkins 服务器的地址,格式为
http://<User ID>:<API Token>@<Jenkins IP 地址>:端口
,如果您的 Jenkins 服务器配置了域名访问,格式为http://<User ID>:<API Token>@<Jenkins 域名>
。例如:http://testuser:fc05db5181b5a4bcf6ca702e4771161c@yourdomain.com
。
注意:您的域名用的是http协议还是https协议
- URL 中的 User ID 和 API Token 可以在您的 Jenkins 站点中获取,具体操作如下:
a. 登录您的 Jenkins 站点,点击 用户,选择您当前登录的用户(比如:testuser),并点击该用户进入用户界面
b. 依次点击设置,Show API Token…按钮,即可获取您的 User ID 和 API Token
3. 点击测试按钮,测试 Jenkins 服务器连接。如果出现连接失败提示,请检查 URL 是否正确或网络连接是否畅通。如果按钮显示连接成功,表示可以正常访问 Jenkins 服务器。
4. 填写 Job 列表映射。选择您需要构建 Jenkins Job 的列表,并填写好该列需要触发的 Job 名称(比如:leangoo_test),点击保存按钮即可。如果需要新建多个 Job 列表映射,可以点击添加按钮新增,并保存。
注意:如果取消勾选了开启事件触发,是不会触发 Job 构建的,也不会收到 Jenkins 的通知。
在 Jenkins 中安装 Notifications 插件
Job 构建的实时状态是通过 Notifications 插件发送到 Leangoo 的,所以需要您在 Jenkins 中安装好该插件。
1.依次点击系统管理,管理插件进入插件管理界面
2. 点击可选插件,在过滤输入框中输入notification plugin 可以看到过滤后的插件列表中出现该插件。勾选后点击直接安装即可
在 Jenkins Job 中配置 Job Notifications 和参数化构建
Leangoo 向 Jenkins 服务器发送请求时会携带board_id(看板id)和list_id(列表id)参数,所以 Job 必须开启参数化构建,并添加这两个参数。
同时,Job Notifications 插件需要配置好 Leangoo 构建信息接收地址,以便于在 Leangoo 中接收 Job 构建的结果。
1. 配置 Job Notifications 的 URL。点击Add Endpoint 按钮新增一个通知的 URL 端点。
- 填写 URL , 即构建信息接收地址。例如: https://testuser%40sina.com:9852a8531c22c119a889bc18ec3f48d5@www.leangoo.com/kanban/plugins/jenkins/light
- URL 地址在 Leangoo 的 Jenkins 配置模态框中已经给出,直接复制 URL ,将 email 和 token 替换成您自己的即可。
- email 即您登陆 Leangoo 的邮箱地址,注意:email 中的@需替换为%40
- token 为您的 API令牌,在 Leangoo 用户中心页面可以获取
2. 配置参数化构建。勾选参数化构建过程,添加两个字符串参数:board_id和list_id。
拖拽触发 Job 构建
当以上的配置都完毕后,当您将卡片拖拽到 Job 映射列(比如:从 Task-doing 拖到 Story-testing)后,会提示是否构建对应的 Job。
选择确定后,开始构建 Job,列表头上亮起红绿灯。
构建完毕后,如果 Job 构建成功,会亮起绿灯;构建失败,亮起红灯
- URL 为 Jenkins 服务器的地址,格式为