如何自定义Jenkins构建名称?

时间:2012-08-31 20:00:58

标签: jenkins jenkins-plugins

当我在Jenkins中运行作业时,每个构建都会在Build History中的UI中显示一个名称,该名称基本上是当前的日期和时间。

我希望能够在那里放置构建参数,以便在构建历史记录中可以看到构建了哪些分支以及何时构建。

我已经四处搜索插件来执行此操作,但我找不到任何插件。有吗?

6 个答案:

答案 0 :(得分:32)

听起来像Build Name Setter plugin

但如果您使用Pipeline,则可以执行以下操作:

currentBuild.description = "#${BUILD_NUMBER}, branch ${BRANCH}"

答案 1 :(得分:17)

[回复上面的Patrice M.的评论,我没有足够的声誉来发表评论]:

Build Name Setter插件与Token Macro plugin结合使用时,可以表达各种变量,包括环境变量。此外,构建参数也可用作环境变量;所以,例如,如果您的构建具有参数“MYPARAM”,那么您可以在构建名称中使用它(假设您已经安装了令牌宏插件),如下所示:

Built with parameter MYPARAM: ${ENV, var="MYPARAM"}

答案 2 :(得分:7)

也可以使用Jenkins Groovy plugin“手动”设置构建名称。只需按照以下步骤操作:

  1. 生成新的构建名称。如果要在单独的作业步骤中执行它,则可能需要将其保存到属性文件,例如名称为“newVersion”,并使用Jenkins EnvInject plugin执行“注入环境变量”步骤。
  2. 下一步 - 运行System Groovy脚本:

    def build = Thread.currentThread().executable
    assert build
    def newBuildName = build.getEnvironment().get('newVersion')
    try {
        if (newBuildName) build.displayName = newBuildName
        println "Build display name is set to ${newBuildName}"
    } catch (MissingPropertyException e) {}
    
  3. 如您所见,我们在此处使用build.displayName变量。它的值是Jenkins中可见的构建名称。

答案 3 :(得分:2)

修改默认显示名称使用currentBuild.displayName = "#${BUILD_NUMBER}, branch ${BRANCH}"

答案 4 :(得分:0)

此插件" Build name setter plugin"可以帮到你。作为构建名称的源,您可以使用磁盘上的文本文件或环境变量,也可以将插件与EnvInject等插件结合使用

答案 5 :(得分:0)

警告:这只适用于* nix环境。对于单个shell步骤,您可以执行< command>改为:

/usr/bin/env JOB_NAME="Old JOB_NAME: ${JOB_NAME}" <command>

假设您的项目被调用&#34; myproject&#34;,&lt; command&gt;会看到JOB_NAME环境变量为&#34;旧JOB_NAME:myproject&#34;