【DevOps实践】6. TAPD集成实现Jenkins流水线持续集成

1. 摘要

TAPD是腾讯的敏捷开发管理工具,现在集成到企业微信,已对外免费开放。
TAPD流水线是支持集成企业正在使用的持续集成平台,提供可视化流水线,支持构建任务展示与管理。
这里以Jenkins集成为例,介绍流水线相关功能:
完成关联配置后,Jenkins 中的构建和部署结果将会自动同步至TAPD流水线中,可以在TAPD中直接查看流水线任务列表,执行状态,构建范围等信息,并可以直接触发流水线执行。

2.TAPD的DevOps解决方案介绍

TAPD DevOps解决方案提供贯穿产品研发生命周期的一站式服务,覆盖“需求-代码-构建-测试-发布”全过程,助力企业打通产品交付流程,提升研发交付效率。

2.1 功能特性

主流研发工具集成,支持主流代码、构建、自动化测试、部署发布工具,帮助企业实现研发工具链整合,打破平台壁垒。


2.2 可视化流水线

DevOps 流程数据可视化与管理,帮助团队成员快速掌握流水线执行情况,定位失败原因,快速响应与反馈。


2.3 研发数据一站式打通

支持TAPD需求、缺陷、任务与流水线任务关联,清晰查看每次构建业务对象范围,支持代码检查报告、自动化测试报告、构建执行日志管理与查看。


2.4 聚合式统计与度量

针对研发数据多元化、分散化特点,从项目管理出发,将业务数据与研发工程数据整合,为业务研发效能度量与持续改进提供数据支持。

2.5 消息通知与统计报告

支持企业微信、邮箱、站内信等多种通知方式,灵活配置通知提醒。支持企业微信机器人,提供一键拉群、自动推送能力(即将推出)。


参考 https://www.tapd.cn/help/show#1120003271001000198

3.实践内容

3.1 启用流水线与源码

TAPD DevOps 解决方案支持集成 Gitlab、Github、Jenkins 等主流研发工具,在进行工具配置前,需在 TAPD 公司设置下启用相关服务。本文档基于 Jenkins 搭建的构建服务示例,进行具体的集成步骤介绍。

(1)由公司管理员选择 【安全与集成】>【服务集成】 关联“Jenkins”服务。

(2)项目下启用“流水线”应用。

若需要在已有项目中使用,可以由项目管理员进入对应项目,选择 【项目设置】> 【应用设置】>【启用应用】 开启 “流水线” 应用。

若需要在新项目中使用,可以通过“新建项目”入口,选择“DevOps 持续交付”项目模版进行创建。

(3)选择 【项目设置】>【流水线设置】 菜单,根据业务情况,进行所需环节的流水线配置。

可以分别进行代码关联、持续集成关联、代码质量分析、制品/包管理、自动化测试、部署发布。

具体配置参考:https://www.tapd.cn/help/show#1120003271001000218)完成配置。

3.2 代码关联配置

(1)进入 【项目设置】>【流水线配置】>【代码关联】 ,选择代码 Gitlab。
获取 Webhook 配置信息。


(2)打开 Gitlab,在“代码项目设置”中,选择 Webhooks 设置,并填入配置信息。


配置完成后,提交 Gitlab 代码时加上对应关键字即可关联 TAPD 的需求、缺陷、任务。

具体参考:
https://www.tapd.cn/help/show#1120003271001000292

3.3 持续集成配置

(1)TAPD 项目 ID 获取方式:选择 【TAPD 项目】>【流水线应用】 ,右上角复制即可。



(2)Jenkins 关联配置TAPD


具体参考:https://www.tapd.cn/help/show#1120003271001000294

3.4 代码质量分析配置

本节将介绍启用流水线后,如何将代码质量分析工具与 TAPD 项目进行关联。
确保您的业务环境已部署 SonarQube 并在持续集成服务中安装了 SonarQube 插件。
在 Pre Step 下,构建步骤中增加 【Execute SonarQube Scanner】,构建时进行执行。


流水线工程采用pipe脚本形式进行了,可以不执行上面步骤。参考上一篇文档。

参考:https://www.tapd.cn/help/show#1120003271001000294

3.5 制品与包管理配置

辉哥没有使用。参考:https://www.tapd.cn/help/show#1120003271001000295

3.6 自动化测试配置

辉哥没有使用。参考:
https://www.tapd.cn/help/show#1120003271001000296

3.7 部署发布配置

辉哥的部署发布采用pipeline的sh命令脚本的形式实现了。没有使用Ansible或者Saltstack。后续有时间再研究。
参考:https://www.tapd.cn/help/show#1120003271001000297

3.8 运行样例

两个流水线工程,执行到哪一个步骤,结果如何,都可以看到。

3.参考

(1)TAPD LITE 腾讯敏捷工具平台介绍
https://www.tapd.cn/home/solution/tapdlite

(2)TAPD的DevOps解决方案介绍
https://www.tapd.cn/help/show#1120003271001000198

你可能感兴趣的:(【DevOps实践】6. TAPD集成实现Jenkins流水线持续集成)