更新时间:2024-12-16 GMT+08:00

编排流水线任务

任务是流水线上可管理的最小执行单元,可以在流水线阶段中进行纳管和串并行编排。

  1. 访问CodeArts Pipeline首页
  2. 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。
  3. 进入流水线“任务编排”页面,单击阶段下“新建任务”,弹出“新建任务”侧滑框。

    • 单击任务下方的,可以添加一个和该任务串行编排的任务,即按顺序执行,如:构建任务和部署任务应该按顺序先后执行。
    • 单击“并行任务”,可以添加一个和已有任务并行编排的任务,即同时执行,如:代码检查任务和构建任务可以同时执行。

  4. 为任务配置插件及任务信息,操作说明如下:

    表1 配置任务

    操作项

    说明

    添加插件

    流水线插件分为构建插件、代码检查插件、部署插件、测试插件和通用插件5种类型,可以根据不同类型进行过滤或搜索,插件来源请参考管理流水线扩展插件

    将鼠标移动到插件卡片,单击“添加”,即可将插件添加到任务中,请根据需要配置插件相关信息:

    • 填写插件名称。
    • 选择需要调用的任务。支持搜索过滤,如果找不到合适的任务,请根据界面提示新建任务。
    • 如果调用的任务有参数,参数也会显示出来,请根据需要配置相应参数。
    • 插件名称后有对应标记,单个任务中最多只能添加一个带“任务”标记的插件;带“草稿”标记的插件表示当前用户发布为草稿的自定义插件。
    • “挂起流水线”插件只能添加在不含并行任务的阶段中。

    删除插件

    将鼠标移动到已经添加的插件卡片,单击,选择“删除”,可以删除当前插件。

    更换插件

    将鼠标移动到已经添加的插件卡片,单击,选择“更换”,或者单击插件上方“更换插件”,可以返回插件列表,更换当前插件。

    排序插件

    单击插件卡片不松开,可以移动插件调整插件顺序。

    任务配置

    配置任务ID、执行主机和执行条件。

    • 任务ID:。流水线阶段任务的ID,同一条流水线上的任务ID不能重复。支持大小写英文字母、数字、“-”、“_”,长度范围为1~128个字符。
    • 执行主机:包括内置执行机和自定义执行机。
      • 内置执行机:服务提供的执行主机,用户无需配置开箱即用。
      • 自定义执行机:支持用户自行配置工具和运行环境,以满足不同任务的需求。选择自定义执行机需提前在资源池添加代理资源池,详细操作请参见资源池管理
      说明:

      执行主机仅针对非任务级插件。

    • 任务选择
      • 必须选择:必须执行,执行流水线时该任务默认勾选且无法修改。
      • 禁止选择:禁止执行,执行流水线时该任务禁止勾选。
      • 默认选择:执行流水线时该任务默认勾选但可按需修改。
      • 默认不选择:执行流水线时该任务默认不勾选但可按需修改。
    • 执行条件:即流水线阶段任务执行时需要满足的前提条件,通过配置执行条件,可以控制阶段任务是否执行。
      • 前置任务未选择仍执行:上一个任务状态执行成功或未选择,都继续执行当前任务。
      • 前置任务成功时执行:上一个任务执行成功才执行当前任务。
      • 前置任务失败时执行:上一个任务执行失败才执行当前任务。
      • 始终执行:始终执行当前任务,上一个任务状态是失败、成功、中止或忽略执行,都继续执行当前任务。
      • 表达式:当前置任务到达终态,包括:成功(COMPLETED)、失败(FAILED)、中止(CANCELED)、忽略执行(IGNORED),且表达式结果为“true”时,执行当前任务,否则不执行。表达式形式为“${{ }}”,由流水线上下文、操作符、函数或常量任意组合而成。表达式编写请参考流水线执行条件表达式

        示例:

        在执行条件中定义不管前置任务(任务ID为“job_1”)运行成功或失败,均执行当前任务,表达式语法如下:

        ${{ jobs.job_1.status == 'COMPLETED' || jobs.job_1.status == 'FAILED' }}

  5. 配置完任务,单击“确定”,完成任务添加,可根据实际需要编辑、复制、删除、移动任务。

    表2 管理任务

    操作项

    说明

    编辑任务

    单击任务卡片,可以编辑当前任务。

    复制任务

    将鼠标移动到任务卡片,单击,可以复制一个和该任务串行编排的任务。

    删除任务

    将鼠标移动到任务卡片,单击,根据删除提示确定是否删除任务。

    排序任务

    单击任务卡片不松开,可以移动任务调整任务顺序。

    说明:

    任务并行执行时不支持调整顺序。

  6. 任务编排完成后,保存流水线。