如何让Jenkins扩展选择参数同时输出已勾选与未勾选项?
扩展选择参数获取未勾选选项的可行方案
可行。扩展选择参数本身仅输出已勾选列表,但可以通过以下方式基于该参数方案获取未勾选选项:
- 第一步:确保你在扩展选择参数中配置的所有可选值是明确已知的(比如你示例里的
CTA,RSP2,EM,SPM,PRIME),如果是动态生成的可选值,要把生成逻辑同步到后续脚本中。 - 第二步:在Jenkins任务的构建阶段,用脚本计算未勾选选项(以Groovy脚本为例,Pipeline或Freestyle任务都适用):
// 定义所有可选选项的集合 def allOptions = ['CTA', 'RSP2', 'EM', 'SPM', 'PRIME'] // 获取扩展选择参数的已勾选值并分割为数组 def selectedOptions = env.Test_p.split(',') // 计算未勾选选项(集合差集操作) def unselectedOptions = allOptions - selectedOptions // 转换为逗号分隔的字符串(和已勾选格式一致) def unselectedStr = unselectedOptions.join(',') // 可以将结果存入环境变量供后续步骤使用,或者直接输出 env.UNSELECTED_OPTIONS = unselectedStr echo "未勾选选项:${unselectedStr}"
这个方法完全基于你选用的扩展选择参数方案,没有切换其他参数类型,仅通过脚本补充计算未勾选部分,符合你的需求。
内容的提问来源于stack exchange,提问作者Silviu Alexandru
相关产品推荐
相关产品推荐

