更新时间:2025-06-27 GMT+08:00
分享

配置流水线

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

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

本章节介绍开发人员Chris如何将代码检查、构建、部署任务串联起来,实现持续交付。

预置流水线简介

示例项目中预置以下5个流水线任务,可根据需要查看并使用。

表1 预置流水线任务

预置流水线任务

任务说明

phoenix-workflow

基本的流水线任务。

phoenix-workflow-test

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

phoenix-workflow-work

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

phoenix-workflow-result

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

phoenix-workflow-vote

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

配置并执行流水线

如果使用phoenix-cd-cce”部署应用,在执行流水线前,请参考检查CCE集群,将集群内的工作负载清空。

  1. 进入项目“凤凰商城”,单击导航“持续交付 > 流水线”,进入流水线服务。
  2. 在流水线“phoenix-workflow”的“操作”列单击,选择“编辑”,进入编辑页面。
  3. 选择“参数设置”页签,确认参数“dockerOrg”、“dockerServer”的默认值与构建任务“phoenix-sample-ci”保持一致。
  4. 添加代码检查阶段。

    1. 选择“任务编排”页签,单击“流水线源”与“构建”之间的,页面中显示新增的阶段“阶段_1”。
    2. 单击“阶段_1”后的,在“编辑阶段”窗口中输入阶段名称“代码检查”,单击“确定”。
      图1 编辑阶段名称
    3. 单击“新建任务”,选择“从空任务新建”,页面右侧滑出“从空任务新建”窗口。
    4. 在列表中找到“Check代码检查”,单击“添加”。
      图2 添加代码检查任务
    5. 选择调用任务“phoenix-codecheck-worker”,单击“确定”。

      添加成功,页面中显示代码检查任务。

  5. 配置部署任务。

    单击部署任务名称,在窗口中选择关联构建任务“phoenix-sample-ci”,并检查配置项的值。

    • 任务“phoenix-sample-standalone”的配置需与部署服务中同名任务的“参数设置”页面内容保持一致。
    • 任务“phoenix-cd-cce”的配置需与部署服务中同名任务“参数设置”页面内容保持一致。

    部署任务中添加了两个部署任务,如果您在之前的步骤中只选择了一种部署方式,请保留对应的部署任务,将另一个删除。

  6. 单击“保存并执行”,在弹框中单击“确定”,启动流水线。

    当页面中显示时,表示任务执行成功。

    如果流水线执行失败,可单击失败原因提示,打开日志,参考流水线常见问题排查处理。

配置准出条件

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

  1. 进入项目“凤凰商城”,单击导航“持续交付 > 流水线”,进入流水线服务。
  2. 在流水线“phoenix-workflow”的“操作”列单击,选择“编辑”,进入编辑页面。
  3. 选择“任务编排”页签,在阶段“代码检查”中,单击“准出条件”,页面右侧滑出“准出条件”窗口。
  4. 单击“标准策略准出条件”后的“添加”。
  5. 选择“系统策略”,单击“确定”。

    保存成功,页面中显示新增的准出条件。

  6. 单击“保存并执行”,启动流水线任务。

    如果代码检查问题数未达到准出条件,流水线任务将执行失败。

    图3 执行流水线

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

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

  1. 进入项目“凤凰商城”,单击导航“持续交付 > 流水线”,进入流水线服务。
  2. 在流水线“phoenix-workflow”的“操作”列单击,选择“编辑”,进入编辑页面。
  3. 选择“执行计划”页签,在“事件触发”目录下勾选“代码提交时触发”开关,并勾选分支“master”,单击“保存”。

    图4 配置执行计划

    保存成功,页面中显示修改后的执行计划。

  4. 验证配置结果:修改代码并推送至master,然后查看流水线是否自动启动执行。

相关文档