Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins管道中的环境变量_Jenkins_Jenkins Pipeline - Fatal编程技术网

Jenkins管道中的环境变量

Jenkins管道中的环境变量,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,是否有任何环境变量可用于获取Jenkins管道标题 我知道我们可以用$JOB\u NAME获得自由式工作的头衔, 但是有什么可以用来获取管道名称吗?您可以使用相同的名称从groovy访问相同的环境变量(例如,JOB\u name或env.JOB\u name) 从文件中: 环境变量可以从Groovy代码中作为env.VARNAME或仅仅作为VARNAME进行访问。您也可以写入这些属性(仅使用env.prefix): 在构建期间或构建完成后,还可以通过RESTAPI以及使用构建步骤的上游管道构建获

是否有任何环境变量可用于获取Jenkins管道标题

我知道我们可以用
$JOB\u NAME
获得自由式工作的头衔,
但是有什么可以用来获取管道名称吗?

您可以使用相同的名称从groovy访问相同的环境变量(例如,
JOB\u name
env.JOB\u name

从文件中:

环境变量可以从Groovy代码中作为env.VARNAME或仅仅作为VARNAME进行访问。您也可以写入这些属性(仅使用env.prefix):

在构建期间或构建完成后,还可以通过RESTAPI以及使用构建步骤的上游管道构建获得这些定义

对于其余文档,请单击任何管道作业中的“管道语法”链接

为了避免更改
env
后出现副作用的问题,尤其是使用多个节点,最好设置一个临时上下文

改变环境的一种安全方法是:

 withEnv(['MYTOOL_HOME=/usr/local/mytool']) {
    sh '$MYTOOL_HOME/bin/start'
 }

这种方法不会在命令执行后毒害env。

谢谢,我使用了env.MyVariable,它在我的用例中工作。现在我可以从管道中定义环境变量。感谢您为我节省了一些时间。如果您想查看管道中可用的变量,可以查看此答案。
 withEnv(['MYTOOL_HOME=/usr/local/mytool']) {
    sh '$MYTOOL_HOME/bin/start'
 }