
# 新建流水线（图形化）
 #### 准备工作
- 已[开通并授权使用CodeArts Pipeline](https://support.huaweicloud.com/usermanual-pipeline/pipeline_01_0033.html)。
- [新建项目](https://support.huaweicloud.com/usermanual-projectman/projectman_ug_2001.html)。命名为project01。
- 使用CodeArts Repo流水线源：[新建代码仓库](https://support.huaweicloud.com/usermanual-codeartsrepo/codeartsrepo_03_0077.html)。命名为Repo01
- [新建CodeArts服务扩展点](https://support.huaweicloud.com/usermanual-devcloud/devcloud_01_0019.html)：用于提升CodeArts Repo代码库的操作权限，或连接非CodeArts的第三方代码库。
 
#### 约束与限制
- GitCode流水线源当前仅支持"北京四"和"广州"局点白名单用户。如果您需要开通此功能，请新建工单或拨打客服热线进行咨询。
- 新建流水线自定义模板。
  - 系统模板只能用来复制或生成流水线，不能编辑和删除。
  
  - 模板中无需配置流水线源。
   
 
#### 新建流水线
1. [访问CodeArts Pipeline首页](https://support.huaweicloud.com/usermanual-pipeline/pipeline_01_0014.html)。
2. 单击"新建流水线"，进入"基本信息"页面，参考[表1]配置流水线基本信息。
   
    表1流水线基本信息参数说明 
   | **参数项**      | **说明**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 取值样例                      |
   |:---|:---|:---|
   | 名称           | 流水线的名称，支持自定义名称。支持中文、大小写英文字母、数字、"-"、"_"，长度不超过128个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 输入"pipeline01"。           |
   | 委托URN        | IAM的委托唯一标识。未配置时，使用默认委托。配置后，执行流水线中任务时使用委托身份和权限访问其他云服务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | -                         |
   | 所属项目         | 流水线归属的项目。 - 从流水线服务首页入口新建流水线，请根据实际需要选择已创建的项目。  - 从项目下流水线入口新建流水线，所属项目默认为当前项目，不可更改。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 默认选择的项目，此处默认为"project01"。 |
   | 流水线分组        | 流水线的分组，可在新建流水线时选择分组，同时也可新建或编辑分组。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | -                         |
   | 流水线源         | 流水线关联的源类型。 - CodeArts代码源 Repo：提供企业代码托管的全方位服务，为软件开发者提供基于Git的在线代码托管服务。   - 第三方代码源 - 码云：连接码云账号之后可以获取该账号下的仓库、分支等信息。  - GitHub：连接GitHub账号后可以获取该账号下的仓库、分支等信息。  - GitCode：连接GitCode账号后可以获取该账号下的仓库、分支等信息。  - 通用Git：连接第三方通用Git仓库后可以获取该账号下的仓库、分支等信息。  - Artifact：连接Artifact账号后可以获取该制品仓库的仓库类型和版本信息。  - 其他项目Repo：从其他项目的代码托管中拉取代码，请选择已有的项目、该项目下已经创建的代码仓以及默认分支。    - 制品源 SWR：使用华为云容器镜像作为流水线源运行流水线，并生成制品名称、制品下载地址和制品版本号系统参数，供需要的任务插件使用。    说明： - 如果用户新建的流水线任务不需要关联代码仓，也可以选择"暂不选择"，不关联代码仓时，如果添加了需要关联代码仓的任务，执行时会提示错误，具体问题请参考[常见问题](https://support.huaweicloud.com/pipeline_faq/pipeline_faq_0004.html)。   | 选择"Repo"。                 |
   | 创建方式         | 创建流水线的方式。关联本项目Repo代码源时，可以选择图形化编排和YAML化编排两种方式。 - 图形化编排：以图形化界面方式轻松配置流水线，清晰展示任务串并行关系。  - YAML化编排：以代码化方式编排流水线，支持语法自动补齐和校验，方便多流水线批量配置。请参考[新建流水线（YAML化）](https://support.huaweicloud.com/usermanual-pipeline/pipeline_01_0024.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 选择"图形化编排"。                |
   | 服务扩展点        | 关联第三方代码源时，需通过服务扩展点实现与对应仓库的连接。可选择[准备工作]中提前创建的扩展点，也可单击"新建服务扩展点"进行创建，具体操作请参考[新建CodeArts服务扩展点](https://support.huaweicloud.com/usermanual-devcloud/devcloud_01_0019.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | -                         |
   | 项目           | 当流水线源选择"其他项目Repo"时，所要拉取代码的代码托管所属项目。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | -                         |
   | 代码仓          | 流水线关联的代码仓库，可选择提前新建好的仓库，也可单击"新建仓库"进行创建，新建仓库可参考[新建代码仓库](https://support.huaweicloud.com/usermanual-codeartsrepo/codeartsrepo_03_0077.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | 选择"Repo01"。               |
   | 默认分支         | 仓库默认分支，手工或定时执行流水线时默认使用的分支。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 选择"master"。               |
   | Repo HTTPS授权 | 该参数为非必填。关联Repo代码源时，可配置授权扩展点以提升代码库操作权限，当前主要用于流水线服务的微服务变更功能模块及相关插件。可选择[准备工作]中提前创建的扩展点，也可单击"新建授权"进行创建，具体操作请参考[新建CodeArts服务扩展点](https://support.huaweicloud.com/usermanual-devcloud/devcloud_01_0019.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | -                         |
   | 别名           | 该参数为非必填。仓库别名，设置别名后可基于别名生成仓库对应的系统参数，如："别名_REPOSITORY_NAME"，表示仓库名称。生成的参数可在参数设置页面查看，并在流水线中通过"${参数名}"进行引用。 仅支持输入大小写英文字母、数字、"_"，长度不超过128个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | -                         |
   | 描述           | 该参数为非必填。对流水线的描述，长度不超过1024个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | -                         |
   | 来源制品仓库类型     | 当流水线关联的源类型为Artifact流水线源时，选择来源制品仓库类型。可选择"软件发布库"或"Docker库"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | -                         |
   | 默认版本         | 运行流水线时，默认使用的版本。可选择"Latest"或"Specific Version"。当流水线关联的源类型为Artifact流水线源时，需填写该参数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | -                         |
   | 制品           | 软件开发过程产生的软件包。当流水线关联的源类型为Artifact流水线源时需填写该参数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | -                         |
   | 组织           | 当流水线关联的源类型为SWR流水线源时，选择SWR组织。 当流水线关联的源类型为Artifact流水线源时，选择当前项目下的组织。 组织用于隔离镜像，每个组织可对应一个公司或部门，将其拥有的镜像集中在该组织下。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | -                         |
   | 镜像名          | 当流水线关联的源类型为SWR流水线源时，选择组织下的镜像。 当流水线关联的源类型为Artifact流水线源时，选择当前项目组织下的镜像。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | -                         |
   | 指定版本         | 当流水线关联的源类型为SWR流水线源时，选择镜像的版本。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | -                         |
   | 制品源别名        | 当流水线关联的源类型为SWR流水线源或Artifact流水线源时，需设置制品源别名，设置别名后可基于别名生成对应的系统参数，如："别名_ARTIFACT_NAME"，表示制品名称。生成的参数可在参数设置页面查看，并在流水线中通过"${参数名}"进行引用。 仅支持输入中文、大小写英文字母、数字、"-"、"_"、"."，长度不超过128个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | -                         |
      
   
   
3. 单击"下一步"，进入"模板选择"页面。此处以"空模板"为例创建。 
   - 选择系统模板或自定义模板，即在模板基础上快速新建流水线，并自动生成模板预置的任务，模板来源请参考[管理流水线模板]。
   
   - 选择"空模板"，即不使用模板，新建空任务流水线。
   
   
   
   
4. 选择完模板，单击"确定"，完成流水线的创建。 
   页面自动进入流水线"任务编排"页面，您可以继续[配置流水线](https://support.huaweicloud.com/usermanual-pipeline/pipeline_01_0016.html)，也可以单击"取消"返回流水线列表。
   图1任务编排   
   ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002483864712.png "点击放大")
   
   
 
 #### 流水线模板
流水线服务预置了一系列常用系统模板，同时支持创建自定义模板，帮助您基于模板快速创建持续交付流水线，在企业内完成复用和发布流程标准化。
表2流水线的常用系统模板 
| 模板名称           | 模板解释                                                                                                                                                                                                                                                                                                                          |
|:---|:---|
| Maven构建        | - 该模板使用Maven模板进行构建。  - 编程语言：JAVA。  - 编译工具：Maven3.5.3、JDK1.8。                   |
| Node构建容器镜像     | - 该模板使用NPM模板进行构建。  - 编程语言：JAVASCRIPT。  - 编译工具：nodejs12.7.0。                            |
| Maven构建容器镜像    | - 该模板使用Maven模板进行构建。  - 编程语言：JAVA。  - 编译工具：Maven3.5.3、JDK1.8。                    |
| Python构建       | - 该模板使用Setuptools对Python项目工程代码进行编译构建、代码检查。  - 编程语言：Python。  - 编译工具：python3.6。   |
| Go构建           | - 该模板使用Go模板进行构建。  - 编程语言：Go。  - 编译工具：go-1.10.3。                                   |
| Python构建容器镜像   | - 该模板使用Setuptools模板进行构建，推送到SWR存储。  - 编程语言：Python。  - 编译工具：python3.6。       |
| SpringBoot编译部署 | - 该模板使用Maven模板进行构建。  - 使用语言：JAVA。  - 编译工具：Maven3.5.3、JDK1.8。                       |
| NodeJS构建       | - 该模板使用NodeJS模板进行构建。  - 编程语言：JAVASCRIPT。  - 编译工具：nodejs12.7.0。                        |
| PHP构建          | - 该模板使用PHP模板进行构建。  - 编程语言：PHP。  - 编译工具：php7.3.3。                             |
   
- **流水线模板列表页入口**
  - 首页入口：进入流水线服务首页，默认展示"流水线列表"页面，单击"流水线模板"，进入"流水线模板"页面。
    图2流水线模板列表   
    ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002332809220.png "点击放大") 
  
  - 项目入口：进入项目下流水线页面，单击"模板"，进入"流水线模板"页面。
    图3流水线模板   
    ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002366567673.png "点击放大")
    流水线模板列表操作项说明如下：
    表3模板列表操作项 
    | **操作项**                                                                                   | **说明**                                                                                                                                                                                                                                                                                                                                                        |
    |:---|:---|
    | ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002332809228.png) | 生成流水线。单击后进入"新建流水线"页面，可快速生成对应模板的流水线。                                                                                                                                                                                                                                                                                                                           |
    | ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002366567677.png) | 收藏模板。单击可收藏模板，收藏后图标变为![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002332649444.png)，再次单击可以取消收藏。                                                                                                                                                                                                                                     |
    | ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002332809236.png) | - 单击后选择"编辑"，进入"任务编排"页面，可编辑模板。  - 单击后选择"复制"，进入"任务编排"页面，可复制模板。  - 单击后选择"删除"，弹出"删除模板"弹窗，可根据提示删除模板。   |
       
    
   

- **新建流水线自定义模板**
  1. [进入流水线模板列表页]。
  
  2. 单击"新建流水线模板"，进入"任务编排"页面。
  
  3. 根据需要配置模板基本信息、任务编排、参数设置等。
     - 基本信息：可编辑模板的名称（必填）、语言（支持Java、Python、Node.js、Go、.Net、C++、PHP、ArkTs，默认选择"无"）、模板描述信息。
       图4基本信息   
       ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002347866929.png "点击放大") 
     
     - 配置阶段的准入类型。
       - 自动：默认执行方式，流水线执行时自动进入下一阶段继续运行。
       
       - 手动：流水线执行时需手动确认后才能进入下一阶段继续运行。
       
       - 时间窗：流水线执行时需在配置好的时间段才能进入下一阶段继续执行。
        
     
     - 配置准出条件。
       1. 单击阶段下方"准出条件"，弹出"准出条件"侧滑框，将鼠标移动到准出条件卡片，单击"添加"。
       
       2. 填写准出条件名称，选择策略。 ![](https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002398341309.png "点击放大")
          
          
       
       3. 单击"确定"，即可添加一个准出条件。
        
     
     - 任务编排：流水线模板支持添加所有的插件，包括官方插件、第三方插件和自定义插件，将构建、代码检查、部署、接口测试等任务配置在模板中后，通过模板创建流水线时，会同步创建相应类型的任务。
     
     - 参数设置：可根据需要为模板添加参数，流水线模板参数包括自定义参数和系统预定义参数，自定义参数类型包括字符串类型、自增长类型和枚举类型，配置方法请参见[配置流水线自定义参数](https://support.huaweicloud.com/usermanual-pipeline/pipeline_01_0003.html#pipeline_01_0003__section471519164129)。
      
  
  4. 单击"保存"，弹出"创建模板成功"提示，完成流水线模板的创建。
   
#### 操作视频
本视频介绍如何创建并执行流水线任务。
<video controls="controls" preload="none" id="object148051321978" class="idp-external-video" src="https://res-video.hc-cdn.com/cloudbu-site/china/zh-cn/support/codeartspipeline_video/1763707029920680682.mp4" title="创建并执行流水线" poster="https://support.huaweicloud.com/usermanual-pipeline/zh-cn_image_0000002322428018.jpg" height="280.0000" width="500.0000"></video>
