You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Groovy的build方法能否在任务完成后返回构建ID与构建状态?

Jenkins Pipeline Groovy语法中,build步骤在默认等待下游任务执行完成后返回的buildData对象,确实包含你需要的构建ID和构建状态,还支持获取多个构建相关的核心属性。

需求字段获取方式

你需要的两个核心信息可以直接通过返回对象获取:

  • 构建ID:调用buildData.id或者buildData.getId(),返回值为本次构建的唯一数字ID,和构建详情页URL中的编号一致
  • 构建状态:调用buildData.result或者buildData.getResult(),返回字符串类型的构建结果,常见取值包括SUCCESS/FAILURE/ABORTED/UNSTABLE/NOT_BUILT
其他可获取的常用属性

除上述字段外,你还可以从返回对象中获取以下信息:

  • 构建显示名称:buildData.displayName,通常是带编号和参数标识的名称,例如#456 (env=test)
  • 构建详情页完整URL:buildData.absoluteUrl
  • 构建启动时间戳:buildData.timeInMillis,返回13位毫秒级时间戳
  • 构建触发原因列表:buildData.buildCauses,包含触发用户、触发方式等信息
  • 构建运行状态标识:buildData.building,布尔值,标识构建是否还在运行中(默认配置下build步骤会等待构建完成再返回,因此该值为false)
使用示例
// 触发下游任务并等待执行完成
def buildData = build(job: 'xyz', parameters: [string(name: 'env', value: 'prod')])
// 提取需要的信息
def targetBuildId = buildData.id
def targetBuildStatus = buildData.result
println "下游构建ID:${targetBuildId},构建结果:${targetBuildStatus}"

注意:如果你调用build时添加了wait: false参数,方法会在触发任务后立刻返回,此时返回对象仅包含基础任务信息,无法获取最终构建状态,需要后续自行轮询查询构建结果。

内容的提问来源于stack exchange,提问作者Aayush

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 03:54:07