Jenkins Groovy Pipeline:根据环境动态控制权限参数可选值
实现Jenkins参数动态联动(Environment控制Permission选项)
要实现你要的逻辑,Jenkins原生参数做不到,得靠Active Choices Plugin来搞动态参数,步骤如下:
- 先装插件:在Jenkins插件管理里搜「Active Choices Plugin」,安装后重启Jenkins。
- 替换原来的permission参数:
- 删掉原来的
choice类型的permission参数,换成「Active Choices Reactive Parameter」(要支持单选/多选的话,记得勾上参数配置里的「Multi-select」选项)。 - 在「Reference parameters」里选上
Environment,让这个参数跟着Environment的选择动态变化。
- 删掉原来的
- 写动态生成选项的Groovy脚本:
在参数的「Script」框里贴下面的代码:def selectedEnv = Environment if (selectedEnv == 'PRD') { return ['user', 'service account'] } else { return ['user', 'service account', 'policy'] }
这样配置完后:
- 选Dev/QA时,permission会显示全部三个选项,支持单选或多选;
- 选PRD时,只会出现user和service account两个选项,同样支持单选或多选。
内容的提问来源于stack exchange,提问作者Groovy_dummy
相关产品推荐
相关产品推荐

