【问题标题】:“Inject environment variables” Jenkins 2.0“注入环境变量” Jenkins 2.0
【发布时间】:2016-04-28 22:31:54
【问题描述】:

我最近升级到 Jenkins 2.0。

我正在尝试按照this SO post 的行向 jenkins 的“注入环境变量”作业添加构建步骤,但它没有作为选项显示。

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

【问题讨论】:

  • 您的 jenkins 工作是管道还是标准工作?
  • 标准。我最终安装了该插件,现在它似乎工作正常。似乎我从来没有对早期版本这样做过,但也许我错了……

标签: jenkins jenkins-plugins jenkins-2


【解决方案1】:

如果您使用的是 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)

如有疑问请咨询我

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-06
    • 1970-01-01
    • 1970-01-01
    • 2013-06-24
    • 2017-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多