我们正在使用参数化的Jenkins构建作业,我想为某些特定于我自己的参数设置默认值,例如:我主要使用的开发分支名称。可能吗?我们在Jenkins有个人用户。
答案 0 :(得分:1)
您可以通过以下方式完成:
创建一个检查当前用户并返回适当值的脚本:
def user = jenkins.model.Jenkins.getAuthentication().getName();
def returnValue
switch (user) {
case ['user1','user2']:
returnValue = 'xyz'
break;
case ['user3']:
returnValue = 'abc'
break;
default:
returnValue = '00'
break;
}
return returnValue
如果您想使用Active Choices Plugin,您的脚本将需要返回一个列表:
def user = jenkins.model.Jenkins.getAuthentication().getName();
def returnValue = [];
switch (user) {
case ['user1','user2']:
returnValue << 'xyz'
break;
case ['mtlelj']:
returnValue << 'abc'
break;
default:
returnValue << '00'
break;
}
return returnValue
将参数化构建配置为具有动态参数(Scriptler)或 Active Choices 参数,并引用您创建的脚本作为其来源
如果您不想要由管理员集中管理的脚本,则Active Choices参数允许您使用参数定义中的代码。我用的是:
Jenkins ver 2.32.3
Scriptler Plugin ver 2.9
动态参数插件ver 2.9
Active Choices Plugin ver 2.9