Env var在路径中返回null

时间:2017-03-29 21:04:50

标签: javascript jenkins environment-variables ubuntu-14.04

我想知道是否有人见过以下内容。我已经设置了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上的相同设置没有此问题

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

虽然我无法解释为什么我在我的路径中变为空,但在我的管道的相关部分周围使用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"
 } 
}