当我在 Jenkins 中运行作业时,每个构建都有一个名称,该名称显示在 UI 中的构建历史中,基本上是当前日期和时间。
我希望能够在那里输入构建参数,以便我可以在构建历史中看到哪些分支已经构建以及何时构建。
我已经四处寻找插件来执行此操作,但我找不到任何插件。有吗?
当我在 Jenkins 中运行作业时,每个构建都有一个名称,该名称显示在 UI 中的构建历史中,基本上是当前日期和时间。
我希望能够在那里输入构建参数,以便我可以在构建历史中看到哪些分支已经构建以及何时构建。
我已经四处寻找插件来执行此操作,但我找不到任何插件。有吗?
听起来像Build Name Setter 插件。
但是,如果您使用的是Pipeline,则可以执行以下操作:
currentBuild.description = "#${BUILD_NUMBER}, branch ${BRANCH}"
[回复Patrice M.上面的评论,只是我没有足够的声誉发表评论]:
当与Token Macro 插件一起使用时, Build Name Setter插件可以表达各种变量,包括环境变量。此外,构建参数也可用作环境变量;因此,例如,如果您的构建有一个参数“MYPARAM”,那么您可以在构建名称中简单地使用它(假设您已经安装了令牌宏插件),如下所示:
Built with parameter MYPARAM: ${ENV, var="MYPARAM"}
也可以使用Jenkins Groovy 插件“手动”设置构建名称。只需按照以下步骤操作:
下一步 - 运行 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) {}
如您所见,我们在build.displayName
这里使用了一个变量。它的值是 Jenkins 中可见的构建名称。
要修改默认显示名称,请使用currentBuild.displayName = "#${BUILD_NUMBER}, branch ${BRANCH}"
警告:这只适用于 *nix 环境。对于单个 shell 步骤,您可以执行 <command> 代替:
/usr/bin/env JOB_NAME="Old JOB_NAME: ${JOB_NAME}" <command>
假设您的项目名为“myproject”,<command> 会将 JOB_NAME 环境变量视为“Old JOB_NAME: myproject”
这个插件“构建名称设置器插件”可以帮助你。作为构建名称的来源,您可以使用磁盘上的文本文件或环境变量,也可以将插件与EnvInject等插件结合使用
您可以使用构建名称和描述设置器插件(https://plugins.jenkins.io/build-name-setter/)并将构建名称作为字符串参数传递
text-finder-plugin 的分支,https://github.com/judovana/text-finders-plugin可以根据控制台输出中的行或其他构建工件设置显示名称