文档首页 > > 最佳实践> HE2E DevOps实践>

步骤八:配置流水线,实现持续交付

步骤八:配置流水线,实现持续交付

分享
更新时间:2021/03/09 GMT+08:00

流水线提供可视化、可定制的自动交付流水线,支持代码检查、编译构建、部署等多种任务类型。

随着项目的进行,各个环节(构建、发布、部署)越来越标准化。但是每个环节都相对独立,是半成品,不能交付业务价值。将每一个环节有效的串联起来形成一套完成的持续交付流水线,才能够真正提高软件的发布效率与质量,持续不断的创造业务价值。

通过本章节,您将了解开发人员Chris如何使用流水线服务将代码检查、编译构建、部署任务串联起来,实现持续交付。

预置流水线简介

样例项目中预置了如表1所示的5个流水线任务,可根据需要查看并使用。
表1 预置流水线任务

预置流水线任务

任务说明

phoenix-workflow

基本的流水线任务。

phoenix-workflow-test

测试环境对应的流水线任务。

phoenix-workflow-work

Worker功能对应的流水线任务。

phoenix-workflow-result

Result功能对应的流水线任务。

phoenix-workflow-vote

Vote功能对应的流水线任务。

关于Vote、Result、Worker的说明,请参见HE2E DevOps实践介绍

配置并执行流水线

为了更好地介绍流水线服务的操作流程,本章节将创建全新的流水线。

流水线通常由多个阶段构成,例如代码检查阶段、构建阶段等。每个阶段中可以添加多个子任务,并可以配置阶段下子任务是串行还是并行执行。

  1. 创建流水线。

    1. 进入“凤凰商城”项目,单击页面上方导航构建&发布 > 流水线
    2. 单击“新建流水线”,参照表2配置流水线。
      表2 流水线配置

      配置项

      配置建议

      基本信息

      输入流水线名称“phoenix-sample-pipeline”

      选择代码源

      依次选择代码源“CodeHub”、仓库“phoenix-sample”、默认分支“master”

      选择模板

      选择“不使用模板,直接创建”

    3. 分别单击构建阶段前后的,添加两个流水线阶段,如图1所示。
      图1 添加流水线阶段
    4. 单击“阶段_1”中的图标,在右侧滑出框中输入名称“代码检查”,单击“保存”,如图2所示。
      图2 编辑流水线阶段名称
    5. 按照同样的方式,将“阶段_2”命名为“部署”
    6. 在代码检查阶段中添加代码检查任务。
      1. 单击阶段“代码检查”“添加任务”,如图3所示。
        图3 添加任务
      2. 在右侧滑出框中,类型选择“代码检查”,并在页面下方勾选代码检查任务“phoenix-codecheck-worker”,单击“保存”,如图4所示。
        图4 选择代码检查任务
    7. 按照同样的方式,添加在构建阶段添加子任务“phoenix-sample-ci”,在部署阶段添加子任务“phoenix-sample-standalone”
    8. 单击“保存”,完成流水线的创建,页面自动跳转至任务详情页。

  2. 执行流水线。

    单击“全新执行”,启动流水线(若有弹框没,请根据实际情况填写配置项,并直接单击“执行”)。

    流水线执行耗时约5~8分钟,当出现如图5所示的页面时,表示任务执行成功。

    若任务执行失败,请于执行失败处检查失败原因(如:部署阶段执行失败,则进入部署任务查看部署日志,结合附录排查失败原因),或参照流水线服务常见问题排查。

    图5 流水线执行成功

配置质量门禁

为了控制代码的质量,代码必须经过扫描,并且错误数量控制在合理范围内,才允许发布。通过添加质量门禁可以有效的自动化控制流程。

通过步骤五:检查项目代码可知,代码检查问题数有11个。若在流水线中添加代码检查门禁,并将门禁阈值设置为小于11,则流水线将会执行失败。

  1. 在流水线任务“phoenix-sample-pipeline”详情页,单击页面右上角“编辑”
  2. 在阶段“代码检查”,单击“质量门禁”处的图标
  3. 添加质量门禁,如图6所示。

    1. 在页面右侧滑框中,单击“点击创建”
    2. 在弹框中输入名称“代码检查门禁”
    3. 打开“CodeCheck问题数”开关。
    4. 输入门禁阈值“5”,单击“保存”
    图6 新建门禁

  4. “门禁”下拉列表中选择在上一步中创建的“代码检查门禁”,单击“保存”
  5. 保存流水线,并启动流水线任务。

    由于代码检查问题数为11,大于门禁阈值,因此待任务执行结束可观察到,流水线任务执行失败,如图7所示。

    图7 流水线执行失败

配置代码变更自动触发流水线

通过以下配置,可实现代码变更自动触发流水线执行,从而实现项目的持续交付。

  1. 在流水线任务“phoenix-sample-pipeline”详情页,单击页面右上角“编辑”
  2. 单击“代码源”阶段中的“Codehub”
  3. 在页面右侧滑框中单击“更多设置”,在“触发分支”下拉列表中勾选分支“master”,单击“保存”,如图8所示。

    图8 触发器

  4. 验证配置结果:修改项目代码并推送至master(代码开发方式请参考步骤四:开发项目代码,本节不再赘述),即可查看流水线是否自动执行。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区论坛频道来与我们联系探讨

智能客服提问云社区提问