continuous-integration - 在 Jenkins 中设置来自主作业的下游作业的构建号

标签 continuous-integration jenkins

我有 2 个 Jenkins 奴隶和 1 个主人(3 台机器)。例如 Slave1 和 Slave2。我有两个工作并使用标签将工作绑定(bind)到奴隶。例如 Job1 绑定(bind)到 Slave1,Job2 绑定(bind)到 Slave2。两者都是自由风格的工作。我创建了一个自由风格的作业,它只调用 Job1 和 Job2,所以它们同时在奴隶上运行。我希望这两个作业始终使用相同的内部版本号构建或从上游作业继承内部版本号。有没有办法将内部版本号从主要作业发送到两个下游作业?我想防止 Job1 和 Job2 的内部版本号不同步,如果一个单独运行就会发生这种情况。

最佳答案

Jenkins Java API中有一个方法: Job::updateNextBuildNumber(int) .因此,您可以尝试以下操作:从系统 Groovy 脚本(可以通过 Groovy Plugin 运行)找到子作业对象,通过上述方法在它们上设置内部版本号;然后触发它们。

但是,您仍然可能会遇到问题。例如,如果其中一个作业是手动触发的,您可能无法为其设置数字(内部版本号必须增加)。

关于continuous-integration - 在 Jenkins 中设置来自主作业的下游作业的构建号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10627760/

相关文章:

javascript - 如何根据环境向Javascript注入(inject)变量?

svn - Jenkins - 在构建之前查看 SVN 更改

jenkins - Jenkins 下游作业无法找到上游工件

python - Jenkins 用户无法运行 python 脚本

ios - FaSTLane 构建并发布到 App Center 后应用程序无法启动

jenkins - 位桶服务器 : Merge check - Minimum successful builds not enabling merge even after the condition is satisfied

Jenkins 未能建立下游工作

docker - Shell Runner 的所有权问题

ios - 在 FaSTLane 中的 Appfile 中存储环境变量的语法

Visual Studio Online 构建结束时的 Git 标记(Build vNext,托管池)