【问题标题】:Env var returning null in path环境变量在路径中返回空值
【发布时间】:2017-03-29 21:04:50
【问题描述】:

我想知道是否有人看过以下内容。我已经设置为 ENV Vars (ubuntu 14.04)

CERT_PATH=/home/ubuntu/certs/developer.cert.co.uk.pem
CA_PATH=/home/ubuntu/certs/ca.pem

然后我在 js 脚本中获取这些值

var certPath = process.env.CERT_PATH;
var caPath = process.env.CA_PATH;

但我很难理解为什么其中一个变量在路径中返回 null

-- console log here
CERT Path: null/certs/developer.cert.co.uk.pem
CA Path: /home/ubuntu/certs/ca.pem

我不明白的是,OSX 上的相同设置没有这个问题

【问题讨论】:

  • 用于设置环境变量的运行时上下文是什么?

标签: javascript jenkins environment-variables ubuntu-14.04


【解决方案1】:

在管道 groovy 脚本中只需使用 env.CERT_PATH = /home/ubuntu/certs/developer.cert.co.uk.pem

【讨论】:

    【解决方案2】:

    虽然我无法解释为什么我在我的路径中得到空值,但在我的管道相关部分周围使用 withEnv 块是我最终要做的。

    我通常这样做,但我认为我可以全局设置 ENV var 并能够从中读取而无需这样做,但似乎并非如此

    withEnv(["CA_PATH=/home/ubuntu/certs/ca.pem", "CERT_PATH=/home/ubuntu/certs/developer.cert.co.uk.pem"]) {
     try {
       sh '''#!/bin/bash -l
             run tests
          '''
         TESTS = 'success'
     } catch (Exception err) {
         TESTS = "failure"
     } 
    }
    

    【讨论】:

      猜你喜欢
      • 2017-01-23
      • 1970-01-01
      • 2021-03-09
      • 2020-09-04
      • 1970-01-01
      • 1970-01-01
      • 2015-02-16
      • 2016-03-05
      • 1970-01-01
      相关资源
      最近更新 更多