Jenkins/Hudson - 如何获取当前构建版本号?

88

我正在生成一个报告文件,并且希望在Jenkins工作中将当前的构建编号添加到该文件中。是否有环境变量或插件可以用来获取当前的构建编号?

4个回答

127

BUILD_NUMBER 是当前构建的编号。您可以在执行作业的命令中使用它,或者只是在您的作业执行的脚本中使用它。

有关可用环境变量的完整列表,请参阅Jenkins文档。此列表也可从Jenkins实例内部的http://hostname/jenkins/env-vars.html获取。


Richard Fearn,您能否帮我更具体地回答我的问题。我需要获取我的Jenkins作业的构建编号。我正在使用Java + Maven + Jenkins。 - Ankur Singh

19

Jenkins Pipeline还提供了当前构建的编号作为currentBuild的属性number。它可被读取为currentBuild.number

例如:

// Scripted pipeline
def buildNumber = currentBuild.number
// Declarative pipeline
echo "Build number is ${currentBuild.number}"

currentBuild 的其他属性在“Pipeline 语法:全局变量”页面中有描述,该页面包含在每个 Pipeline 作业页面中。该页面描述了基于当前插件的 Jenkins 实例中可用的全局变量。


非常感谢您给出简洁明了的回答。 - jdk
非常感谢您给出简洁明了的回答。 - undefined

12

我也遇到了这个问题,发现如果由于任何错误引起的Jenkins实例硬关闭导致构建号损坏,您可以通过编辑文件 nextBuildNumber (路径为 pathToJenkins\jobs\jobxyz\nextBuildNumber) 来手动设置回构建号,然后使用选项从 管理Jenkins 视图中使用 从磁盘重新加载配置 重新加载。


5
根据Jenkins文档,使用 $BUILD_NUMBER 来标识jenkins运行了多少次构建过程,这是通用的语法。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接