• 流水线

    路径:开发 > 应用流水线

    1. 概述

    Choerodon从0.23.0版本后,将CI流水线与CD流水线进行了功能与页面的融合,因此支持用户在流水线页面编排从CI到CD的完整DevOps流程。流水线中的CI阶段使用的是 GitLab CI 工具,而CD阶段使用的是Activiti工具,由此实现了DevOps流水线可视化的编排与自动化的执行。

    注意:“部署-应用部署-流水线”模块中创建的流水线及其对应的执行记录将在Choerodon V0.24中移除,请尽快将部署模块中的CD流水线维护至新的流水线页面。

    2. 流水线管理

    2.1 创建流水线

    1.点击页面顶部操作栏的创建流水线,进入创建流水线页面。

    image

    2.填写流水线名称,该名称在项目下唯一;

    3.选择关联应用服务;且此处的应用服务应满足以下条件:

    此处默认最多展示出20个满足以上条件的应用服务,可点击“加载更多”或通过模糊搜索来选择应用服务。

    4.高级设置;可直接使用其中的默认设置。此处给出了默认的CI流程Runner镜像;同时支持用户在此自定义该条流水线中的CI流程Runner镜像;

    此处定义的CI流程Runner镜像会作为整条流水线中CI阶段里所有构建类型任务中的默认Runner镜像,在构建任务中同样支持自定义CI任务Runner镜像。

    5.管理阶段;创建界面中会预置1个CI阶段和1个CD阶段;用户可在此基础上维护管理所需的流水线阶段。

    CI阶段:添加阶段时,选择为阶段属性为CI阶段后,用户便只能在此阶段中添加CI类型的任务,其中包含:构建、代码检查、发布Chart以及自定义类型的CI任务;

    CD阶段:添加阶段时,选择为CD阶段后,用户就只能在此阶段中添加CD类型的任务,其中包含:部署、主机部署以及人工卡点类型的CD任务;

    同一CI阶段中的任务仅能“并行”执行;同一CD阶段中的任务仅能“串行”执行;
    流水线关联的应用服务为测试类型的应用服务时,不能添加CD类型的阶段; 流水线中CD阶段后面不能添加CI阶段。

    6.添加CI任务;点击CI阶段中的添加任务,会从右侧弹出任务添加框,首先需要选择任务类型,目前支持构建代码检查发布Chart以及自定义类型的任务;

    image

    1. 添加CD任务;点击CD阶段中的添加任务,会从右侧弹出任务添加框,首先需要选择任务类型,目前支持部署主机部署以及人工卡点类型的任务;

    image

    注意:该类型的CD任务仅Choerodon商业版可用。
    - 选择添加此类型任务后,首先需要填写任务名称、配置触发分支;触发分支的匹配方式支持:分支类型匹配、正则匹配、精确匹配以及精确排除。    
    
    - 选择API测试任务:此处仅支持选择项目下已有的API测试任务。    
        > 选择API测试任务时,需提前在“测试-API测试任务”菜单下维护对应的测试任务。
    
    - 选择关联部署任务:此处为非必选,若不选关联部署任务,则代表,API测试任务在执行前不会做任何判断。选择后,在执行此API测试任务前便会校验:关联的部署任务中对应的新版本是否已部署成功。只有该版本对应的pod状态为可用时,测试任务才会执行。     
        >  此处仅支持选择该任务之前的任一部署任务;  
    

    2.2 修改流水线

    在树结构中选择某条流水线,点击进入该流水线的主页,然后点击顶部的修改按钮,右侧将弹出流水线的修改界面。

    此界面支持修改流水线的CI流程Runner镜像以及其中所有CI阶段与CD阶段,包括各个阶段中所有的任务。

    image

    2.3 全新执行流水线

    全新执行流水线用于在某个分支上手动执行流水线。

    在树结构中选择某条流水线,然后点击该条流水线后面的三点图标按钮,点击选择全新执行按钮,此时界面中弹出全新执行弹框,需要为此次执行选择目标分支。

    全新执行操作弹框中选择的分支会作为此次执行的触发分支,只有触发设置中含有该触发分支的流水线任务才会被触发并执行。

    执行后,系统会选取该分支上最近的一次提交来执行整条流水线。若此次执行触发了CD阶段中的部署任务,则会选取该分支上最近一次提交产生的服务版本进行部署。

    目标分支仅能从该应用服务下已有的分支中进行选择。

    image

    2.4 停用/启用流水线

    若流水线已停用,则仅能进行以下操作:启用;删除。

    2.4 删除流水线

    在树结构中选择一条流水线,点击对应的三点图标,选择删除,确认后,即可删除流水线。

    3. 查看流水线执行记录

    image

    |执行结果(状态) |含义 |对应操作 |—–|—-|—-| |成功|流水线中所有任务均执行成功| 无 |失败|流水线中有任务执行失败| 重试
    |准备中|流水线还未开始执行,处于pendind状态|取消执行 |执行中|流水线中有任务正在运行|取消执行 |已取消|流水线被取消执行后的状态|重试 |待审核|流水线正停留在人工审核的节点,包括人工卡点与阶段间的人工审核 |人工审核 |已终止|人工审核时,点击终止任务,最后流水线为已终止状态 |无

    4. 阅读更多