Jenkins上的动态参数选择

时间:2019-05-09 11:11:34

标签: jenkins jenkins-pipeline jenkins-plugins

我在jenkins上有一个构建/部署工作,并且用户可以使用multi select参数选择要部署的多个项目。我用一个时髦的脚本从数据库表中动态检索这些值。

问题是某些变量应该链接。含义;当用户选择项目X时,还应选择项目A和项目B。

是否可以在jenkins多重选择上触发选择事件?还是我应该使用其他东西?

谢谢。

1 个答案:

答案 0 :(得分:2)

花了一些时间后,我找到了一种使用Active Choices Plugin

的方法

1-我保留了我的首字母extended choice parameter,将其命名为 COMPONENTLIST

2-然后我创建了另一个参数,Active Choices Reactive Reference Parameter命名为 COMPONENT_IDS

2a-我在COMPONENT_IDS中将 COMPONENTLIST 添加为referenced parameter。并将Choice Type设置为Formatted HTML,并选择Omit value field

2b-我使用了以下常规脚本来收集初始选择并对其进行修改,然后像步骤2c一样返回

def output = COMPONENTLIST.split(',').collect{it as int}

2c-这里很棘手!通过参数建立阶段的方式有所不同。下一行帮助我通过了COMPONENT_IDS进行构建。

output = output.join(",") 
return "<b>${output}</b><input type=\"hidden\" name=\"value\" value=\"${output}\" />"