【发布时间】:2017-10-11 05:35:17
【问题描述】:
Jenkins 管道项目配置为从 Git 存储库获取其 Jenkinsfile:
如果我更改参数列表,例如,从:
properties([
parameters([
string(name: 'FOO', description: 'Choose foo')
])
])
到:
properties([
parameters([
string(name: 'FOO', description: 'Choose foo'),
string(name: 'BAR', description: 'Choose bar')
])
])
并运行构建,第一次运行并没有显示新添加的BAR参数:
由于更新后的 Jenkins 文件需要存在 BAR 参数,这会导致更改后的第一次构建失败,因为没有向用户提供输入该值的输入。
有没有办法防止这种情况发生?在显示参数输入页面之前确保Jenkinsfile是最新的?
【问题讨论】:
-
你好吗(是你,这是 17 年的)打电话给
BAR?我发现了类似的问题,我的解决方案是测试params.BAR。if (params.BAR == null) { def BAR = "baz" } else { echo "yes, BAR is set" } -
这里的 Jenkins 错误跟踪器上有一些关于这个问题的讨论:issues.jenkins-ci.org/browse/JENKINS-41929