以下代码应更新Jenkins作业中“构建历史记录”中的构建名称:
// define the build name based on the build number and an environment variable
job('example') {
wrappers {
buildName('#${BUILD_NUMBER} on ${ENV,var="BRANCH"}')
}
}
不幸的是,它没有这样做。
是否可以通过Jenkins Job DSL脚本更改构建名称? 我知道我可以从Jenkins Pipeline Script更改它,但是在这项特定工作中我不需要它。我在工作中使用的只是步骤 。
steps {
shell("docker cp ...")
shell("git clone ...")
...
}
我想强调的是,我正在寻找一种本机的Jenkins Job DSL解决方案,而不是一种Jenkins Pipeline Script解决方案,而不是一种操纵环境变量的方法。
答案 0 :(得分:3)
我今天设法解决了我的问题。 该脚本不起作用,因为它需要在Jenkins中安装构建名称设置插件。安装后,它可以完美运行。 不幸的是,默认情况下jobdsl处理器不会通知缺少的插件。 https://issues.jenkins-ci.org/browse/JENKINS-37417
中所述的参数启用答案 1 :(得分:1)
这是更改构建的显示名称和描述的最小管道。恕我直言,这很简单。
pipeline {
agent any
environment {
VERSION = "1.2.3-SNAPSHOT"
}
stages {
stage("set build name") {
steps {
script {
currentBuild.displayName = "v${env.VERSION}"
currentBuild.description = "#${BUILD_NUMBER} (v${env.VERSION})"
}
}
}
}
}
答案 2 :(得分:1)
setBuildName("your_build_name")
也可以解决问题。
需要Groovy Postbuild插件。