Jenkins - 级联插件 - 自动评估不会发生在第二级

时间:2016-02-11 22:46:48

标签: dynamic jenkins parameters jenkins-plugins cascade

在Jenkins中,可以使用Cascading Dynamic Choice参数插件,即如果paramter1是一个简单的选择参数(假设参数名称是 targetEnv ),选项值为 int,qa,int-test等等每行,如果我选择值' int',那么我可以使用Cascading Dynamic Choice参数来调整我的第二个参数的目标值,例如: targetEnvServer 在运行时我为此设置的任何内容' int'只有环境。

这很有用,就像用户选择任何其他环境一样#q; qa"例如,只要第一个参数(选择参数)中的选择从int更改为其他值, targetEnvServer 参数的值就会自动更改。我们需要确保的是,用于返回有效值(列表)的Groovy部分是在 targetEnv 参数。

对于第一个和第二个变量(其中第二个变量的值取决于第一个参数值的值)正常工作!,但是如果还有第三个参数(级联动态选择参数插件,其中父参数也是,则 NOT 正常工作>级联动态选择参数类型)例如: restoreDateTime2 ,它取决于第二个参数(它再次依赖于参数1 targetEnv 并且是级联动态选择参数插件类型)。

此图显示了jenkins作业配置: enter image description here

此图显示当您单击使用参数构建并出现错误时会发生什么。 错误:未找到结构化表单元素:someVariable

enter image description here

此图显示当您将选择从一个值更改为另一个值时,第一个参数

会发生什么

enter image description here

如何实现在参数3的参数1和参数2之间成功发生的级联动态选择参数行为(当参数2值由于参数1的选择发生任何变化而变化时)?

1 个答案:

答案 0 :(得分:0)

使用Jenkins Active Choices Plugin我能够实现我所寻求的目标,但Cascading Choice插件的问题仍然存在。

Active choices插件支持3种参数类型,并且支持多级引用变量来填充变量的值(其中参数依赖于另一个/ reference参数)。 Jenkins插件的Active Choices插件网站上提供的文档非常适合尝试上面提到的场景,并且运行良好。

在使用引用变量并使用它从Jenkins主服务器/远程计算机文件夹中获取一些数据之后,我必须编写一小段Groovy代码来获取数据。