用环境值替换文件内容-Jenkins

时间:2019-06-20 11:04:47

标签: jenkins jenkins-pipeline

在我的Jenkins管道中,我使用插件从文件加载环境属性。这样,我想用已加载或可用的环境变量替换文件内容。

示例: 从包含以下值的文件加载的属性

property1=value1
property2=value2

要用上述变量替换的文件内容

properties: 
  property1: $property1
  property2: $property2

预期输出

properties: 
  property1: value1
  property2: value2

我尝试了几个插件,但发现它们可以读取文本并写入文件,但是我需要读取文件并写入具有替换变量的新文件。

3 个答案:

答案 0 :(得分:0)

您可以尝试使用writeFile步骤并动态生成内容。

  1. 使用 evaluate(“ $ property”)方法对值进行动态循环生成内容
  2. 将内容传递到 writeFile 步骤。

答案 1 :(得分:0)

如何使用包含sed命令的简单脚本?创建新文件应该没什么大不了的。

看看以下示例之一:

这应该符合您的要求。

答案 2 :(得分:0)

尝试多种方法后,我发现这对我的问题很有效。

设置或从文件加载属性后

eval "echo \"$(<my-template.yaml)\"" > my-config.yaml