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

Jenkins - Cascading Plugin - Auto evaluate not happening to second level

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

这很有用,就好像用户 select 的任何其他环境 "qa" for ex,然后 targetEnvServer 参数的值将尽快自动更改因为第一个参数(选择参数)中的 selection 从 int 变为其他东西。我们需要确保的是,用于返回有效值(列表)的 Groovy 部分写在该用户的级联动态选择参数插件配置的 Groovy 代码部分 selected targetEnv 参数中的环境。

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

此图显示了 jenkins 作业配置:

此图显示了当您单击“使用参数构建”并出现错误时发生的情况。 错误:未找到结构化表单元素:someVariable

此图显示了当您将 selection 的第一个参数从一个值更改为另一个值时发生的情况

我怎样才能实现在参数 1 和参数 2 之间成功发生的级联动态选择参数行为...对于参数 3 也是如此(当参数 2 的值由于参数 1 的 selection 的任何变化而改变时)?

使用 Jenkins Active Choices Plugin 我能够实现我正在寻找的东西,但 Cascading Choice 插件的问题仍然存在。

Active choices 插件支持 3 种参数类型,并且支持多级引用变量来填充变量的值(其中一个参数依赖于另一个/引用参数)。 Jenkins 插件站点上有关 Active Choices 插件的文档足以尝试我遇到的上述场景并且效果很好。

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