检索所有jenkins参数以在groovy代码中迭代

时间:2014-11-19 13:43:10

标签: groovy jenkins

根据this回答,我想迭代jenkins作业中的所有属性,并在构建步骤中替换它们在作业中的值。

e..g。

file = new File("folder/path/myfile.cs")
fileText = file.text;
fileText = fileText.replaceAll("parameter", "parametervalue");
file.write(fileText);

我看到一个例子来解决这样一个参数:

build.buildVariableResolver.resolve("myparameter")

但我需要

  
      
  1. 迭代所有这些
  2.   
  3. 要在构建步骤(从源代码中提取)之后执行此操作,以便在当前版本中执行。
  4.   

我该怎么做?

1 个答案:

答案 0 :(得分:2)

以下是您可以与scriptler plugin一起使用的示例groovy代码,我建议您使用。此代码可以正确读取在任何Jenkins作业中设置的环境变量:

import jenkins.model.Jenkins

def thr = Thread.currentThread()
def build = thr?.executable
def env = build.getEnvironment()
def buildNumber = env.get("BUILD_NUMBER")

如果您想要阅读构建参数(您有参数化构建并需要访问这些变量),您需要使用前面的代码并添加以下内容:

def bparams = build.getBuildVariables()
def myBuildParam = bparams.get("MY_BUILD_PARAMETER")

阅读完毕后,您可以在git cloning之后的构建步骤中将它们写入您的文件。