执行条件表达式
表达式由流水线上下文、操作符、函数或常量任意组合而成,通常用于流水线阶段任务的执行条件中,以限制任务执行。表达式以编程的方式访问流水线上下文,实现将流水线中运行的实例、变量、任务等信息在流水线之间互相传递。
操作符
操作符 |
说明 |
---|---|
. |
属性引用。 |
! |
非。 |
== |
等于。 |
!= |
不等于。 |
&& |
且。 |
|| |
或。 |
示例:
如需在执行条件中指定不管前置任务(任务ID为“job_1”)运行成功或失败,均执行当前任务,则表达式语法如下。
${{ jobs.job_1.status == 'COMPLETED' || jobs.job_1.status == 'FAILED' }}
函数
表达式中可使用如下内置函数。
- contains
- startsWith
- endsWith
- 对象筛选器
使用“*”语法应用筛选器并选择集合中的匹配项。
示例:
如下是流水线某次运行的jobs上下文。
则“jobs.*.status”返回“[ 'COMPLETED', 'FAILED' ]”。
可结合contains函数一起使用,如:contains(jobs.*.status, 'FAILED'),函数将返回“true”。
{ "check_job": { "status": "COMPLETED", "metrics": { "critical": "0", "major": "0" } }, "demo_job": { "status": "FAILED" } }