我最近升级到 Jenkins 2.0。
我正在尝试按照此 SO 帖子的内容向 jenkins 的“注入环境变量”作业添加一个构建步骤,但它没有显示为一个选项。
这不是 Jenkins 2.0 中的功能(或者它一直是一个单独的插件)吗?我是否必须安装另一个插件,例如Envinject?
我最近升级到 Jenkins 2.0。
我正在尝试按照此 SO 帖子的内容向 jenkins 的“注入环境变量”作业添加一个构建步骤,但它没有显示为一个选项。
这不是 Jenkins 2.0 中的功能(或者它一直是一个单独的插件)吗?我是否必须安装另一个插件,例如Envinject?
如果您使用的是 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)
如果您有任何疑问,请询问我