通过微服务变更流水线修复项目BUG并快速发布
方案概述
CodeArts Pipeline为企业提供了一种微服务模型,将企业大军团的作战方式转变为小团队精英作战方式,支持每个微服务独立进行开发、验证、部署及上线发布,缩短需求发布周期。同时支持企业按照业务功能组织团队,优化管理模型,使运作更精细化,有效提升团队运作效率。
在微服务中,用户可以创建流水线资源,并将其设置为变更流水线,用于与微服务下变更资源进行联动,通过变更流水线发布一个或多个变更来实现项目的快速交付。
操作流程
本文介绍如何通过微服务变更流水线模拟修复项目下的一个BUG并快速发布,基本操作流程如下:
流程 |
说明 |
---|---|
新建流水线微服务 |
在项目下新建一个微服务,用于管理某个特定的业务功能。 |
新建变更流水线 |
在微服务下新建一条变更流水线,用于发布微服务下的变更。 |
新建微服务变更 |
在微服务下新建一个变更,承载项目下修复BUG的开发活动。 |
执行变更流水线 |
执行流水线,发布变更代码。 |
准备工作
- 新建项目(选择“Scrum”模板,命名为“Project01”),并在项目下新建工作项(以修复一个BUG单为例,命名为“BUGFIX”)。
- 新建代码仓库(选择“Java Maven Demo”模板,命名为“Repo01”)。
- 新建CodeArts Repo HTTPS服务扩展点(命名为“HttpsEndpoint01”)。
步骤1:新建流水线微服务
- 登录华为云控制台页面。
- 单击页面左上角,在服务列表中选择“开发与运维 > 流水线 CodeArts Pipeline”。
- 单击“立即使用”,进入流水线服务首页。
- 单击顶部导航栏“首页”,在首页搜索准备工作中已创建的项目,单击项目名称,进入项目。
- 在左侧导航栏选择“持续交付 > 流水线”,进入项目下流水线列表页面。
- 切换到“微服务”页签,进入微服务列表页面。
- 单击“新建微服务”,进入“新建微服务”页面,配置以下信息。
表2 新建微服务 参数项
说明
所属项目
微服务所在的项目,不可更改。
微服务名称
微服务的名称,输入“Microservice01”。
代码源
微服务关联的源码仓库,选择“Repo”。
代码仓
选择准备工作中已创建的代码仓“Repo01”。
默认分支
默认使用的分支,选择“master”。
语言
指定微服务开发语言,选择“Java”。
描述
对微服务的介绍说明,选填。
- 单击“确定”,完成微服务的创建。
步骤2:新建变更流水线
- 在微服务列表页面,单击微服务名称,进入微服务“概览”页面。
- 切换到“流水线”页签,进入微服务流水线列表页面。
- 单击“新建流水线”,进入“新建流水线 ”页面,配置以下信息。
表3 新建变更流水线 参数项
说明
所属项目
变更流水线所在的项目,不可更改。
名称
变更流水线的名称,使用自动生成的即可。
代码源
变更流水线关联的源码类型,自动和微服务保持一致。
代码仓
变更流水线关联的源码仓库,自动和微服务保持一致。
默认分支
默认使用的分支,自动和微服务保持一致。
Repo https授权
打开“基于变更触发”后需配置“Repo HTTPS授权”,配置授权扩展点以提升代码仓操作权限。选择准备工作中已创建的授权扩展点“HttpsEndpoint01”。
别名
输入别名,会生成该仓库对应的相关系统参数,这里不设置。
基于变更触发
打开“基于变更触发”,将当前流水线设置为微服务变更流水线。
描述
对变更流水线的介绍说明,选填。
微服务变更流水线仅支持基于变更触发运行,且单个微服务下只能存在一条微服务变更流水线。
- 单击“下一步”,选择“Maven构建”模板,自动生成阶段和任务,使用默认配置即可。
- 单击“保存”,完成微服务变更流水线的创建。
步骤3:新建微服务变更
- 重新进入微服务“概览”页面。
- 切换到“变更”页签,进入微服务变更列表页面。
- 单击“新建变更”,进入“新建变更 ”页面,配置以下信息。
表4 新建变更 参数项
说明
变更标题
变更的名称,输入“fix-a-bug”。
代码仓
变更关联的源码仓库,自动和微服务保持一致。
代码分支
变更新需求的开发分支,变更通过流水线发布成功后,会将代码分支自动合并至微服务的默认分支。选择“从默认分支拉取新分支”并输入分支名称“bugfix”。
关联工作项
变更关联的工作项,选择准备工作中已创建的工作项“BUGFIX”。
- 单击“确定”,完成变更的创建。
变更创建完成后,进入代码开发阶段,系统基于微服务默认分支自动创建出本次变更的特性分支,开发人员可以基于该特性分支进行代码开发,问题修复后,模拟向该分支提交代码。
步骤4:执行变更流水线
代码更新完成后,即可通过变更流水线执行变更。
- 在微服务变更列表页面,单击变更名称,进入“变更详情”页面。
- 单击右上角“提交发布”,弹出“提交发布”确认框,提示是否确认将变更提交至变更流水线。
图1 提交发布
- 单击“确定”,完成变更提交,页面跳转至对应变更流水线发布列表页面。
- 单击右上角“执行”,弹出“执行配置”侧滑框,选择刚提交的变更,其他配置保持默认。
图2 执行配置
- 单击“执行”,启动变更流程。
微服务变更流水线在运行过程中,会自动增加“合并集成分支”和“合并主干”阶段,并将本次变更关联的特性分支合并到该集成分支上。
代码检查、构建任务执行成功后,系统自动进入“合并主干”阶段,并弹出“手动确认”对话框。
图3 执行流水线
- 单击“继续执行”,“合并主干”阶段执行完成后,系统将自动完成以下事项。
- 将本次发布的变更状态更新为“已发布”。
- 将本次发布的变更关联的工作项状态更新为“已关闭”。
- 将本次发布使用的集成分支代码内容合并到微服务默认分支,实现代码自动合并。
至此,即完成了一次基本的微服务变更发布流程。