我有Jen Jenkins的作业,它在我的Jenkins作业中有make命令的构建标志的字符串输入参数。我的问题是,当我们有一个发布分支时,有些用户忘记更改参数值。所以我想覆盖当作业是发布作业时应该使用的现有字符串输入参数(或创建一个新参数)。
这是我要添加的声明:
如果分支“ release ”则$ {params.build_flag} ='DEBUGSKIP = TRUE'
并且无效的代码是:
pipeline {
agent none
parameters {
string(name: 'build_flag', defaultValue: 'DEBUGSKIP=TRUE', description: 'Flags to pass to build')
If {
allOf {
branch "*release*"
expression {
${params.build_flag} = 'DEBUGSKIP=TRUE'
}
}
}else{
${params.build_flag} = 'DEBUGSKIP=FALSE'
}
}
上面的代码解释了我想要做什么,但我不知道这样做。
答案 0 :(得分:0)
如果可以,请使用JENKINS EnvInject Plugin查看您是否可以使用管道使用the supported use-case:
注入"
Properties Content
"中定义的EnvVars工作属性的字段这些EnvVars正在注入脚本环境,并且无法通过" env"管道全局变量(为in here)
或者在文件中写入正确的值,并将该文件内容用作" Properties Content
"下游工作(shown there)。