极狐 GitLab

流水线

Tier: 基础版,专业版,旗舰版

Offering: JihuLab.com,私有化部署

允许的模式#

  • 标准模式(默认):查询流水线记录。
  • 分析模式:查询聚合的流水线指标。更多信息,请参见流水线分析。

标准模式不支持排序。

允许的范围#

范围描述
project查询特定项目中的流水线。

更多信息,请参见范围。

查询字段#

在 query 参数中使用这些字段来筛选结果。

字段名称(及别名)运算符
作者author=
引用ref=
范围scope=
SHAsha=
来源source=
状态status=
更新时间updated, updatedAt=, >, <, >=, <=

作者#

描述:按触发流水线的用户筛选。

允许的值类型:

  • String
  • User(例如,@username)

引用#

描述:按流水线运行所在的 Git 引用(分支或标签名称)筛选。

允许的值类型:String

范围#

描述:按流水线的范围筛选。

允许的值类型:

  • Enum,为 branches、tags、finished、pending 或 running 之一

SHA#

描述:按提交 SHA 筛选流水线。

允许的值类型:String

来源#

描述:按触发流水线的来源筛选。

允许的值类型:String

状态#

描述:按流水线的 CI/CD 状态筛选。

允许的值类型:

  • Enum,为 canceled、canceling、created、failed、manual、pending、 preparing、running、scheduled、skipped、success、waiting_for_callback 或 waiting_for_resource 之一

更新时间#

描述:按流水线的最后更新时间筛选。

允许的值类型:

  • AbsoluteDate(格式为 YYYY-MM-DD)
  • RelativeDate(格式为<sign><digit><unit>,其中 sign 为+、-或省略, digit 为整数,unit 为 d(天)、w(周)、m(月)或 y(年)之一)

注意:

  • 对于=运算符,时间范围按用户所在时区的 00:00 至 23:59 计算。

显示字段#

字段名称(及别名)描述
活动状态active显示流水线是否处于活动状态
可取消cancelable显示流水线是否可取消
子流水线child显示这是否为子流水线
提交commit显示提交详情(ID、短 ID、标题、作者姓名、Web URL)
提交路径commitPath显示触发流水线的提交路径
提交时间committed, committedAt显示提交时间戳
已完成complete显示流水线是否已完成
计算分钟computeMinutes显示使用的计算分钟
配置来源configSource显示流水线配置来源
覆盖率coverage显示代码覆盖率百分比
创建时间created, createdAt显示流水线的创建时间
时长duration显示流水线时长
失败作业数failedJobsCount显示失败的作业数量
失败原因failureReason显示流水线失败的原因
完成时间finished, finishedAt显示流水线的完成时间
IDid显示流水线 ID
IIDiid显示流水线内部 ID
最新latest显示这是否为该引用的最新流水线
名称name显示流水线名称
路径path显示流水线路径
引用ref显示 Git 引用(分支或标签)
引用路径refPath显示触发流水线的引用路径
可重试retryable显示流水线是否可重试
SHAsha显示提交 SHA
来源source显示触发流水线的来源
阶段stages显示流水线阶段(名称和状态)
开始时间started, startedAt显示流水线的开始时间
状态status显示流水线状态
卡住stuck显示流水线是否卡住
作业总数totalJobs显示作业总数
更新时间updated, updatedAt显示流水线的最后更新时间
用户user显示触发流水线的用户
警告warnings显示流水线警告
YAML 错误yamlErrors显示流水线是否有 YAML 错误
YAML 错误消息yamlErrorMessages显示 YAML 错误消息

已知问题#

  • 日期范围较大的查询可能会导致超时。

示例#

  • 列出 gitlab-org/gitlab 项目中今天失败的所有流水线:

    yaml
    1```glql 2title: "Failed pipelines today" 3display: table 4fields: id, ref, status, startedAt 5query: type = Pipeline and project = "gitlab-org/gitlab" and status = failed and updated = today() 6```
  • 列出 gitlab-org/gitlab 项目中所有 Duo Agent 流水线:

    yaml
    1```glql 2title: "GitLab Duo agent pipelines" 3display: table 4fields: id, ref, status, source, startedAt 5query: type = Pipeline and project = "gitlab-org/gitlab" and source = "duo_workflow" 6```