0

我正在尝试在 Jenkins 上建立构建。构建成功后,我使用 Post build Action Git Publisher 推送构建的标签。

到目前为止,这些都是手动完成的,标签被赋予版本号 ABCD(来自文本文件)。现在我们使用 Jenkins,D 来自 $BUILD_NUMBER Jenkins 变量,但 ABC 存储在工作空间内的文本文件中。有没有办法可以将 ABC 传递给 git 发布者?还是必须在脚本中执行所有 git 命令?

使用 Jenkins v1.624。目前无法更新(在人们建议之前)

4

1 回答 1

0

不完全确定这是否适用于 Post build Action Git Publisher(因为我不使用它),我只能在

Jenkins 版本上进行测试。2.32.3
EnvInject+插件1.93.1
Groovy+插件1.30

根据 'Joerg S' 在这篇文章中的建议:

使用 Groovy 创建 Jenkins 环境变量

添加“执行 Groovy 脚本”构建步骤以读取tmpFile包含 ABC 的工作区文件 () 并将其转换为基于 java 的属性文件 - name:value):

def custom_tag = new File('tmpfile').text.trim()
File propFile = new File('properties.text')
propFile.write "CUSTOM_TAG:"+custom_tag

然后添加一个“注入环境变量”构建步骤来读入新文件,所以Properties File Pathproperties.text

然后,您应该能够${CUSTOM_TAG}在构建后的 git publish 中使用TAG 作为TAG,因为它现在是一个环境变量。

如果这不起作用,请查看上面链接中的 groovy 代码,它可能会提供其他内容。

于 2018-05-24T09:55:56.630 回答