Jenkins 管道插件:设置构建描述
Jenkins pipeline plugin: set the build description
我正在尝试用一个使用 Jenkins 管道插件并从项目存储库加载 Jenkinsfile
的新作业来替换我们当前的构建管道,该管道目前使用老式的 Jenkins 作业组合在一起。
遗留工作所做的一件事是使用 Description setter plugin 将构建描述设置为包括 Mercurial 哈希、用户名和当前版本,这样构建就很容易找到。
有没有办法 replicate/emulate 使用 Jenkins 管道插件实现此行为?
刚刚弄明白了。管道作业公开了一个具有可写属性的 currentBuild
全局变量。可以通过以下方式设置描述:
currentBuild.description = "my new description"
管道脚本中的任意位置。 DZone tutorial.
中的更多信息
@jjst 的回答描述了如何在“脚本化管道”中设置构建描述。在声明式管道中,您可以执行相同的操作,但需要将其放在 script { }
块中。这是一个完整的工作示例,取自 comments on a Cloudbees article:
pipeline {
agent any
stages {
stage("1st stage") {
steps {
script {
currentBuild.displayName = "My custom build name"
currentBuild.description = "My custom build description"
}
}
}
}
}
jjst 写他的答案时可能不是这种情况,但现在有了最新的 jenkins 和插件,您可以在顶部的主管道之外设置它。这意味着您不必嵌入脚本设置和特殊步骤等,例如
currentBuild.description = "my new description"
pipeline {...
或
currentBuild.description = """
blah
blah
blah
"""
pipeline {
我不确定它有多旧,但我最近发现了 buildDescription
插件,它为您提供了一种设置构建描述的声明性方法。
安装后,非常简单:
steps {
buildDescription 'my build'
}
控制台将显示步骤输出:
New run description is 'my build'
我正在尝试用一个使用 Jenkins 管道插件并从项目存储库加载 Jenkinsfile
的新作业来替换我们当前的构建管道,该管道目前使用老式的 Jenkins 作业组合在一起。
遗留工作所做的一件事是使用 Description setter plugin 将构建描述设置为包括 Mercurial 哈希、用户名和当前版本,这样构建就很容易找到。
有没有办法 replicate/emulate 使用 Jenkins 管道插件实现此行为?
刚刚弄明白了。管道作业公开了一个具有可写属性的 currentBuild
全局变量。可以通过以下方式设置描述:
currentBuild.description = "my new description"
管道脚本中的任意位置。 DZone tutorial.
中的更多信息@jjst 的回答描述了如何在“脚本化管道”中设置构建描述。在声明式管道中,您可以执行相同的操作,但需要将其放在 script { }
块中。这是一个完整的工作示例,取自 comments on a Cloudbees article:
pipeline {
agent any
stages {
stage("1st stage") {
steps {
script {
currentBuild.displayName = "My custom build name"
currentBuild.description = "My custom build description"
}
}
}
}
}
jjst 写他的答案时可能不是这种情况,但现在有了最新的 jenkins 和插件,您可以在顶部的主管道之外设置它。这意味着您不必嵌入脚本设置和特殊步骤等,例如
currentBuild.description = "my new description"
pipeline {...
或
currentBuild.description = """
blah
blah
blah
"""
pipeline {
我不确定它有多旧,但我最近发现了 buildDescription
插件,它为您提供了一种设置构建描述的声明性方法。
安装后,非常简单:
steps {
buildDescription 'my build'
}
控制台将显示步骤输出:
New run description is 'my build'