【发布时间】:2017-07-26 11:04:05
【问题描述】:
一旦在 jenkins 中创建了工作,我想创建一个参数化的构建。其中一个参数是我手动设置的版本。但在我设置它之前,我想从上次成功构建的 POM 中查看项目版本作为占位符。
类似:
下一个版本:
$PREVIOUS_VERSION_AS_PLACEHOLDER
设置下一个版本
【问题讨论】:
一旦在 jenkins 中创建了工作,我想创建一个参数化的构建。其中一个参数是我手动设置的版本。但在我设置它之前,我想从上次成功构建的 POM 中查看项目版本作为占位符。
类似:
下一个版本:
$PREVIOUS_VERSION_AS_PLACEHOLDER
设置下一个版本
【问题讨论】:
您可以添加一个系统常规脚本,该脚本将在每次运行时更改参数的默认值。例如:
(假设您的参数名称是“PREVIOUS_VERSION_AS_PLACEHOLDER”)
import hudson.model.*
import jenkins.model.*
def job = build.getParent() // get the job object
paramsDef = job.getProperty(ParametersDefinitionProperty.class) // get the parameters definition object
if (paramsDef) {
paramsDef.parameterDefinitions.each { param ->
if ("PREVIOUS_VERSION_AS_PLACEHOLDER".equals(param.name)) {
def value = <the_new_version_in_the_pom.xml_file>
println("INFO: Changing parameter ${param.name} default value (was ${param.defaultValue}) to ${value}")
param.defaultValue = value
}
}
}
【讨论】: