根据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")
但我需要
- 迭代所有这些
- 要在构建步骤(从源代码中提取)之后执行此操作,以便在当前版本中执行。
醇>
我该怎么做?
答案 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之后的构建步骤中将它们写入您的文件。