Jenkins中如何实时获取参数化流水线的更改

98次阅读
没有评论

问题描述

在使用Jenkins时,想知道是否有办法在对参数化流水线进行更改后,实时获取这些更改。用户举了一个具体的例子,他有一个流水线代码,其中包含一些参数,他想要更改其中一个参数的默认值。但是,他发现只有在第二次运行作业之后,更改才会生效。他想知道是否有办法在第一次运行作业后立即应用更改。

解决方案

请注意以下操作注意版本差异及修改前做好备份。
目前,Jenkins不支持在第一次运行作业后立即应用参数化流水线的更改。这是因为Jenkins在加载Jenkinsfile到流水线中的方式导致的。
以下是一个相关的StackOverflow回答,其中dolphy解释得很好(我保存了这个链接以便随时关注它的变化,因为我也有同样的问题):
Jenkins在检索、解析和运行Jenkinsfile之前不知道新的参数,而唯一的方法就是运行一个构建。
实际上,构建历史将始终“落后于”Jenkinsfile;当您在Jenkinsfile中进行更改时,下一个构建将使用“旧的”Jenkinsfile运行,但会在下一次构建中获取和处理新的Jenkinsfile。
您可以关注相关的Jenkins Ticket以获取更多信息。

正文完