一尘不染

我如何使用Jenkins和Pipeline Multibranch插件在分支机构之间拥有唯一的内部版本号

jenkins

我们正在将Jenkins Pipeline Multibranch插件与Blue Ocean结合使用。

通过阅读,我相信将项目的内部版本号与Jenkins运行联系在一起是很常见的,因为这允许从已安装的应用程序到CI系统,再到源代码控制的更改,再到提示的问题上的可追溯性。改变。

问题在于,对于每个分支,运行号都从0开始。对于具有多个分支的项目,似乎无法保证唯一的内部版本号。


阅读 337

收藏
2020-07-25

共1个答案

一尘不染

也许不是唯一的(全局数字)内部版本号,而是您想要尝试唯一的(全局)内部显示名?

根据“管道语法:全局变量引用”
currentBuild.displayName是可写属性。因此,您可以例如在内部版本号中添加其他信息(以使其在全局范围内唯一),并在后续的工件/应用程序构建步骤中使用该字符串(以将其合并到应用程序的版本输出中以实现所需的可追溯性),例如:

currentBuild.displayName = "${env.BRANCH_NAME}-${currentBuild.id}"

使用构建的时间表或格式为(currentBuild.timeInMillis)的开始时间作为可读日期,或使用SCM修订版也可能有用,例如,结果为“
20180119-091439-rev149923”。

也可以看看:

2020-07-25