You need to enable JavaScript to run this app.
文档中心
持续交付

持续交付

复制全文
下载 pdf
YAML 语法
流水线任务 tasks
复制全文
下载 pdf
流水线任务 tasks
任务是流水线的独立执行单元。同一阶段内的任务默认并行运行,也可通过 dependsOn 配置任务依赖关系,转为串行执行。​
使用场景​
一个任务可由多个步骤(steps)组成,也可直接由单个组件(component)构成。​
  • 步骤组合:适用于需要执行串行且强关联的连续操作。例如构建任务可拆分为安装依赖、运行测试、代码编译等步骤,各步骤共享工作区环境。​
  • 单个组件:适用于调用标准化、自包含的独立能力。例如人工审核卡点、Kubernetes 镜像升级等场景,组件已封装底层复杂逻辑,只需传入所需入参即可直接使用。​
基础配置项​
​
配置项​
是否必填​
说明​
task​
是​
任务 ID。ID 符合以下要求:​
  • 只能包含小写字母(a-z)、数字(0-9)、中划线(-)。​
  • 以小写字母或者数字开头。​
  • 以小写字母或者数字结尾。​
  • 长度为 1~40 个字符。​
displayName​
否​
任务显示名称,在流水线控制台界面中展示。displayName 长度为 1~50 个字符。​
timeout​
是​
任务执行的超时时间,支持 m(分钟)、h(小时)和 d(天)单位,默认 2h,最大不超过 3天。​
retries​
否​
任务重试的次数,取值范围 1~5。不填写则为不重试。​
resourcesPolicy​
否​
是否下载代码源。支持以下取值:​
  • all:下载代码源,当前仅支持单代码源。​
  • none:不下载代码源。​
steps​
否​
任务执行步骤列表。若 task 中没有 component,则 steps 必填。​
component​
否​
指定目标组件。若 task 中没有 steps,则 component 必填。​
inputs​
否​
传递给组件的输入参数。存在 component 时必填。不同组件中的参数不同,具体参数说明参见 组件列表。​
​
工作空间配置​
​
配置项​
是否必填​
说明​
workspace​
否​
工作区的 ID。ID 符合以下要求:​
  • 只能包含小写字母(a-z)、数字(0-9)、中划线(-)。​
  • 以小写字母或者数字开头。​
  • 以小写字母或者数字结尾。​
  • 长度为 1~40 个字符。​
workspace.resources​
否​
工作空间资源引用列表。workspace 不填写或者 resourcesPolicy 为 all 时必填。​
workspace.resources.ref​
否​
引用的代码源名称,对应 sources.name。workspace 不填写或者 resourcesPolicy 为 all 时必填。​
workspace.resources.directory​
否​
代码下载目录,通常使用 $(CP_WORKSPACE) 变量。workspace 不填写或者 resourcesPolicy 为 all 时必填。​
​
工作空间示例​
​
workspace:​
resources:​
- ref: svcConn-demo​
directory: $(CP_WORKSPACE)​
​
缓存配置​
缓存功能允许在多次流水线运行之间持久化存储和复用文件或目录,从而加快构建速度。​
​
配置项​
是否必填​
说明​
workspace.caches.key​
否​
缓存的 ID。ID 符合以下要求:​
  • 只能包含小写字母(a-z)、数字(0-9)、中划线(-)。​
  • 以小写字母或者数字开头。​
  • 以小写字母或者数字结尾。​
  • 长度为 1~40 个字符。​
workspace.caches.path​
否​
需要被缓存的目录路径。​
​
缓存示例​
​
workspace:​
caches:​
- cacheKey: m2​
directory: $(CP_WORKSPACE)/.m2​
cachePolicy: pull-push​
​
资源配置​
​
配置项​
是否必填​
说明​
resources.limits.cpu​
是​
CPU 资源限制,默认为 1C。​
resources.limits.memory​
是​
内存资源限制,默认为 2Gi。​
​
资源配置示例​
​
resources:​
limits:​
cpu: 1C​
memory: 2Gi​
​
任务依赖配置​
注意​
dependsOn 仅支持配置同一阶段(Stage)内的任务依赖关系。配置时请避免循环依赖,例如任务 A 依赖 B、B 依赖 C、C 依赖 A 的场景。​
​
配置项​
是否必填​
说明​
dependsOn​
否​
依赖的其他任务标识符列表。仅前序依赖任务全部成功后才执行本任务。​
​
依赖示例​
​
tasks:​
- task: go-test​
displayName: test​
timeout: 2h​
steps: [...]​
- task: go-compile​
displayName: compile​
dependsOn:​
- go-test​
timeout: 2h​
steps: [...]​
​
通知插件配置​
​
分类​
配置项​
是否必填​
说明​
基本配置​
plugins.plugin​
是​
插件的类型。固定填写 webhook。​
​
plugins.conditions​
​
是​
触发的条件,支持以下取值:​
  • TaskStarted:任务开始。​
  • TaskSucceeded:任务成功。​
  • TaskFailed:任务失败。​
  • TaskCanceled:任务取消。​
  • TaskWaiting:任务等待。​
输入参数​
plugins.inputs.type​
是​
通知类型,支持以下取值:​
  • Lark:飞书机器人。​
  • Common:普通 Webhook。​
​
plugins.inputs.url​
是​
Webhook 接收地址。​
​
plugins.inputs.token​
否​
认证令牌,用于接口鉴权。​
​
plugins.inputs.content​
否​
自定义通知内容。​
​
plugins.inputs.optionValues​
否​
通知包含的信息字段,plugins.inputs.type为 Lark 时必填。支持以下取值:​
  • BasicInfo:基础信息。​
  • TriggerPerson:触发人员。​
  • TriggerEvent:触发事件。​
  • TriggerTime:触发时间。​
  • TriggerDetail:触发详情。​
  • PipelineAddress:流水线地址。​
​
通知插件示例​
​
plugins:​
- plugin: webhook​
conditions:​
- TaskStarted​
- TaskSucceeded​
inputs:​
content: custom​
optionValues: BasicInfo,TriggerPerson,TriggerEvent,TriggerTime,TriggerDetail,PipelineAddress​
token: token​
type: Lark​
url: https://open.larkoffice.com/open-apis/bot/v2/hook/<your-hook-id>​
​
最近更新时间:2026.05.14 09:56:27
这个页面对您有帮助吗?
有用
有用
无用
无用