问题
我们希望某些作业从默认值开始并修改作业。例如,部署到测试环境中应默认为最后设置。目前,我们可以在运行之前配置作业。可以,但是很麻烦。
答案 0 :(得分:0)
您可以在属性中手动或以编程方式定义道具。如果我们以编程方式执行此操作,则一旦选择它们就可以对其进行更新。第一个调用设置构建的属性,第二个调用将其更改为用户选择。从理论上讲,如果您手动设置这些参数,则只需要第二次调用
def stickyprops(def sticky = "initial value") {
def propertiesAllBranches = [
disableConcurrentBuilds(),
[$class: 'ParametersDefinitionProperty', parameterDefinitions: [
[$class: 'StringParameterDefinition', defaultValue: sticky, description: '', name: 'STICKY_PARAM']]
]
]
properties(propertiesAllBranches)
}
node() {
// set to default
stickyprops()
// Report current user choice
currentBuild.description = "param ${params.STICKY_PARAM}"
// Set params to user choice
stickyprops(params.STICKY_PARAM)
}