小编典典

如何在Jenkins中将参数化作业中参数的最后值存储为下一个构建的默认值?

jenkins

我一直在使用Jenkins几个星期,但我有一个小问题。我找不到任何插件或解决方案来将参数化作业中参数的最后一个值存储为下一个版本的默认值。

例如:我的参数在第一个版本中采用版本(1.0.0.01)。在下一个版本中,它将更改为1.0.0.02,但我想在默认值字段中使用1.0.0.01作为提示。有人有解决方案或建议吗?


阅读 857

收藏
2020-07-25

共1个答案

小编典典

您可以使用Jenkins API将System groovy构建步骤(或也许是post build
Groovy步骤)添加到您的工作中,以直接设置默认参数值来修改项目。

以下是一些可能对您入门有用的代码:

import hudson.model.*

paramsDef = build.getParent().getProperty(ParametersDefinitionProperty.class)
if (paramsDef) {
  paramsDef.parameterDefinitions.each{ param ->
    if (param.name == 'FOO') {
      println("Changing parameter ${param.name} default value was '${param.defaultValue}' to '${param.defaultValue} BAR'")
      param.defaultValue = "${param.defaultValue} BAR"
    }
  }
}

看看Jenkins模型中的ParameterDefinition类。

您可能需要根据当前执行的构建来修改默认参数值。一些获得的代码如下所示:

def thisBuildParamValue = build.buildVariableResolver.resolve('FOO')
2020-07-25