如何在Groovy脚本中配置Jenkins参数:Prod环境下CR号必填
在Jenkins中实现Prod环境下CR号必填的Groovy配置
方法一:流水线(Jenkinsfile)实现
直接在流水线脚本里添加参数验证逻辑,无需额外插件:
pipeline { agent any // 定义参数 parameters { choice(name: 'ENVIRONMENT', choices: ['Dev', 'Prod'], description: '选择部署环境') string(name: 'CR_NUMBER', description: '变更请求号(Prod环境必填)') } stages { // 第一步先做参数验证 stage('参数合法性校验') { steps { script { // 判断如果是Prod环境且CR号为空/空白,直接报错终止 if (params.ENVIRONMENT == 'Prod' && (!params.CR_NUMBER || params.CR_NUMBER.trim().isEmpty())) { error '⚠️ 生产环境部署必须填写有效的CR号!' } } } } // 后续部署阶段... stage('部署') { steps { echo "开始部署到${params.ENVIRONMENT}环境,CR号:${params.CR_NUMBER}" // 部署逻辑写在这里 } } } }
方法二:自由风格项目实现(需安装Active Choices插件)
如果是自由风格项目,需要先安装Active Choices Plugin,然后按以下步骤配置:
- 进入项目配置页,添加「Active Choices Reactive Reference Parameter」,命名为
CR_NUMBER - 在「Reference Parameters」里选择之前定义的环境参数(比如
ENVIRONMENT) - 在「Script」区域填写控制必填性的逻辑,并输出参数:
// 根据环境判断是否必填 def isRequired = (ENVIRONMENT == 'Prod') ? true : false // 返回参数配置 return [ description: isRequired ? '变更请求号(必填)' : '变更请求号(选填)', defaultValue: '', required: isRequired ]
- 保存配置后,当选择Prod环境时,CR号输入框会自动变成必填状态。
注意事项
- 流水线方法更轻量化,不需要额外插件,适合用Jenkinsfile管理的项目
- 自由风格项目依赖Active Choices插件,配置后界面会直接体现必填标记,更直观
内容的提问来源于stack exchange,提问作者Shrestha Saluja
相关产品推荐
相关产品推荐

