
# 配置流水线
流水线服务提供可视化、可定制的自动交付软件生产线，支持代码检查、构建、部署等多种任务类型。
随着项目的进行，构建、发布、部署等环节越来越标准化。但是每个环节都相对独立，仅是半成品，无法直接交付业务价值。只有将这些环节有效串联，形成完整的持续交付流水线，才能提升软件发布效率与质量，持续创造业务价值。
本章节介绍开发人员Chris如何将代码检查、构建、部署任务串联起来，实现持续交付。
#### 预置流水线简介
示例项目中预置以下5个流水线任务，可根据需要查看并使用。
表1预置流水线任务 
| 预置流水线任务                 | 任务说明              |
|:---|:---|
| phoenix-workflow        | 基本的流水线任务。         |
| phoenix-workflow-test   | 测试环境对应的流水线任务。     |
| phoenix-workflow-work   | Worker功能对应的流水线任务。 |
| phoenix-workflow-result | Result功能对应的流水线任务。 |
| phoenix-workflow-vote   | Vote功能对应的流水线任务。   |
   
#### 配置并执行流水线
如果使用"phoenix-cd-cce"部署应用，在执行流水线前，请参考[检查CCE集群](https://support.huaweicloud.com/bestpractice-devcloud/devcloud_practice_2007.html#devcloud_practice_2007__section46752516116)，将集群内的工作负载清空。
1. 进入项目"凤凰商城"，单击导航"持续交付 \> 流水线"，进入流水线服务。
2. 在流水线"phoenix-workflow"的"操作"列单击![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000001637164284.png)，选择"编辑"，进入编辑页面。
3. 选择"参数设置"页签，确认参数"dockerOrg"、"dockerServer"的默认值与构建任务"phoenix-sample-ci"保持一致。
4. 添加代码检查阶段。 
   1. 选择"任务编排"页签，单击"流水线源"与"构建"之间的![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000001979812665.png)，页面中显示新增的阶段"阶段_1"。
   
   2. 单击"阶段_1"后的![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000002321561805.png)，在"编辑阶段"窗口中输入阶段名称"代码检查"，单击"确定"。
      图1编辑阶段名称   
      ![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000002286889328.png) 
   
   3. 单击"新建任务"，选择"从空任务新建"，页面右侧滑出"从空任务新建"窗口。
   
   4. 在列表中找到"Check代码检查"，单击"添加"。
      图2添加代码检查任务   
      ![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000002286891436.png "点击放大") 
   
   5. 选择调用任务"phoenix-codecheck-worker"，单击"确定"。 添加成功，页面中显示代码检查任务。
      
   
   
   
   
5. 配置部署任务。 
   单击部署任务名称，在窗口中选择关联构建任务"phoenix-sample-ci"，并检查配置项的值。
   - 任务"phoenix-sample-standalone"的配置需与部署服务中同名任务的"参数设置"页面内容保持一致。
   
   - 任务"phoenix-cd-cce"的配置需与部署服务中同名任务"参数设置"页面内容保持一致。
   
   
   ![](https://support.huaweicloud.com/bestpractice-devcloud/public_sys-resources/note_3.0-zh-cn.png)
   部署阶段中添加了两个部署任务，如果您在之前的步骤中只选择了一种部署方式，请保留对应的部署任务，将另一个删除。
   
   
6. 单击"保存"后单击"执行"，在弹框中单击"执行"，启动流水线。 
   当页面中显示![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000001457794574.png)时，表示任务执行成功。
   如果流水线执行失败，可单击失败原因提示，打开日志，参考[流水线常见问题](https://support.huaweicloud.com/pipeline_faq/pipeline_faq_0023.html)排查处理。
   
   
 
#### 配置准出条件
为了控制代码的质量，代码必须经过扫描，并且错误数量控制在合理范围内，才允许发布。通过添加准出条件可以有效地自动化控制流程。
1. 进入项目"凤凰商城"，单击导航"持续交付 \> 流水线"，进入流水线服务。
2. 在流水线"phoenix-workflow"的"操作"列单击![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000002321465345.png)，选择"编辑"，进入编辑页面。
3. 选择"任务编排"页签，在阶段"代码检查"中，单击"准出条件"，页面右侧滑出"准出条件"窗口。
4. 单击"标准策略准出条件"后的"添加"。
5. 选择"系统策略"，单击"确定"。 
   保存成功，页面中显示新增的准出条件。
   
   
6. 单击"保存并执行"，启动流水线任务。 
   如果代码检查问题数未达到准出条件，流水线任务将执行失败。
   图3执行流水线   
   ![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000002321579057.png "点击放大")
   
   
 
#### 配置代码变更自动触发流水线
通过以下配置，可实现代码变更自动触发流水线执行，从而实现项目的持续交付。
1. 进入项目"凤凰商城"，单击导航"持续交付 \> 流水线"，进入流水线服务。
2. 在流水线"phoenix-workflow"的"操作"列单击![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000002321578393.png)，选择"编辑"，进入编辑页面。
3. 选择"触发设置"页签，在"事件触发"目录下打开"代码提交事件"开关，并勾选分支"master"，单击"保存"。 
   图4配置执行计划   
   ![](https://support.huaweicloud.com/bestpractice-devcloud/zh-cn_image_0000002510427550.png)
   保存成功，页面中显示修改后的执行计划。
   
   
4. 验证配置结果：修改代码并推送至master，然后查看流水线是否自动启动执行。
 
