文档首页/ 流水线 CodeArts Pipeline/ 最佳实践/ 通过微服务变更流水线修复项目BUG并快速发布
更新时间:2024-11-07 GMT+08:00

通过微服务变更流水线修复项目BUG并快速发布

方案概述

CodeArts Pipeline为企业提供了一种微服务模型,将企业大军团的作战方式转变为小团队精英作战方式,支持每个微服务独立进行开发、验证、部署及上线发布,缩短需求发布周期。同时支持企业按照业务功能组织团队,优化管理模型,使运作更精细化,有效提升团队运作效率。

在微服务中,用户可以创建流水线资源,并将其设置为变更流水线,用于与微服务下变更资源进行联动,通过变更流水线发布一个或多个变更来实现项目的快速交付。

操作流程

本文介绍如何通过微服务变更流水线模拟修复项目下的一个BUG并快速发布,基本操作流程如下:

步骤1:新建流水线微服务

步骤2:新建变更流水线

步骤3:新建微服务变更

步骤4:执行变更流水线

表1 操作流程说明

流程

说明

新建流水线微服务

在项目下新建一个微服务,用于管理某个特定的业务功能。

新建变更流水线

在微服务下新建一条变更流水线,用于发布微服务下的变更。

新建微服务变更

在微服务下新建一个变更,承载项目下修复BUG的开发活动。

执行变更流水线

执行流水线,发布变更代码。

准备工作

步骤1:新建流水线微服务

  1. 登录华为云控制台页面
  2. 单击页面左上角,在服务列表中选择“开发与运维 > 流水线 CodeArts Pipeline”。
  3. 单击“立即使用”,进入流水线服务首页。
  4. 单击顶部导航栏“首页”,在首页搜索准备工作中已创建的项目,单击项目名称,进入项目。
  5. 在左侧导航栏选择“持续交付 > 流水线”,进入项目下流水线列表页面。
  6. 切换到“微服务”页签,进入微服务列表页面。
  7. 单击“新建微服务”,进入“新建微服务”页面,配置以下信息。

    表2 新建微服务

    参数项

    说明

    所属项目

    微服务所在的项目,不可更改。

    微服务名称

    微服务的名称,输入“Microservice01”。

    代码源

    微服务关联的源码仓库,选择“Repo”。

    代码仓

    选择准备工作中已创建的代码仓“Repo01”。

    默认分支

    默认使用的分支,选择“master”。

    语言

    指定微服务开发语言,选择“Java”。

    描述

    对微服务的介绍说明,选填。

  8. 单击“确定”,完成微服务的创建。

步骤2:新建变更流水线

  1. 在微服务列表页面,单击微服务名称,进入微服务“概览”页面。
  2. 切换到“流水线”页签,进入微服务流水线列表页面。
  3. 单击“新建流水线”,进入“新建流水线 ”页面,配置以下信息。

    表3 新建变更流水线

    参数项

    说明

    所属项目

    变更流水线所在的项目,不可更改。

    名称

    变更流水线的名称,使用自动生成的即可。

    代码源

    变更流水线关联的源码类型,自动和微服务保持一致。

    代码仓

    变更流水线关联的源码仓库,自动和微服务保持一致。

    默认分支

    默认使用的分支,自动和微服务保持一致。

    Repo https授权

    打开“基于变更触发”后需配置“Repo HTTPS授权”,配置授权扩展点以提升代码仓操作权限。选择准备工作中已创建的授权扩展点“HttpsEndpoint01”。

    别名

    输入别名,会生成该仓库对应的相关系统参数,这里不设置。

    基于变更触发

    打开“基于变更触发”,将当前流水线设置为微服务变更流水线。

    描述

    对变更流水线的介绍说明,选填。

    微服务变更流水线仅支持基于变更触发运行,且单个微服务下只能存在一条微服务变更流水线。

  4. 单击“下一步”,选择“Maven构建”模板,自动生成阶段和任务,使用默认配置即可。
  5. 单击“保存”,完成微服务变更流水线的创建。

步骤3:新建微服务变更

  1. 重新进入微服务“概览”页面。
  2. 切换到“变更”页签,进入微服务变更列表页面。
  3. 单击“新建变更”,进入“新建变更 ”页面,配置以下信息。

    表4 新建变更

    参数项

    说明

    变更标题

    变更的名称,输入“fix-a-bug”。

    代码仓

    变更关联的源码仓库,自动和微服务保持一致。

    代码分支

    变更新需求的开发分支,变更通过流水线发布成功后,会将代码分支自动合并至微服务的默认分支。选择“从默认分支拉取新分支”并输入分支名称“bugfix”。

    关联工作项

    变更关联的工作项,选择准备工作中已创建的工作项“BUGFIX”。

  4. 单击“确定”,完成变更的创建。

    变更创建完成后,进入代码开发阶段,系统基于微服务默认分支自动创建出本次变更的特性分支,开发人员可以基于该特性分支进行代码开发,问题修复后,模拟向该分支提交代码。

步骤4:执行变更流水线

代码更新完成后,即可通过变更流水线执行变更。

  1. 在微服务变更列表页面,单击变更名称,进入“变更详情”页面。
  2. 单击右上角“提交发布”,弹出“提交发布”确认框,提示是否确认将变更提交至变更流水线。

    图1 提交发布

  3. 单击“确定”,完成变更提交,页面跳转至对应变更流水线发布列表页面。
  4. 单击右上角“执行”,弹出“执行配置”侧滑框,选择刚提交的变更,其他配置保持默认。

    图2 执行配置

  5. 单击“执行”,启动变更流程。

    微服务变更流水线在运行过程中,会自动增加“合并集成分支”和“合并主干”阶段,并将本次变更关联的特性分支合并到该集成分支上。

    代码检查、构建任务执行成功后,系统自动进入“合并主干”阶段,并弹出“手动确认”对话框。

  6. 单击“继续执行”,“合并主干”阶段执行完成后,系统将自动完成以下事项。

    • 将本次发布的变更状态更新为“已发布”。
    • 将本次发布的变更关联的工作项状态更新为“已关闭”。
    • 将本次发布使用的集成分支代码内容合并到微服务默认分支,实现代码自动合并。

    至此,即完成了一次基本的微服务变更发布流程。