0

我最近升级到 Jenkins 2.0。

我正在尝试按照此 SO 帖子的内容向 jenkins 的“注入环境变量”作业添加一个构建步骤,但它没有显示为一个选项。

这不是 Jenkins 2.0 中的功能(或者它一直是一个单独的插件)吗?我是否必须安装另一个插件,例如Envinject

4

1 回答 1

0

如果您使用的是 Jenkins 2.0,您可以加载属性文件(其中包含所有必需的环境变量及其相应的值)并自动读取其中列出的所有环境变量并将其注入到 Jenkins 提供的 env 实体中。

这是执行上述操作的方法。

def loadProperties(path) {
    properties = new Properties()
    File propertiesFile = new File(path)
    properties.load(propertiesFile.newDataInputStream())
    Set<Object> keys = properties.keySet();
    for(Object k:keys){
    String key = (String)k;
    String value =(String) properties.getProperty(key)
    env."${key}" = "${value}"
    }
}

要调用此方法,我们需要将属性文件的路径作为字符串变量传递 例如,在我们使用 groovy 脚本的 Jenkins 文件中,我们可以调用如下

path = "${workspace}/pic_env_vars.properties"
loadProperties(path)

如果您有任何疑问,请询问我

于 2019-01-07T07:29:50.457 回答