Jenkins管道中的环境变量
是否有任何环境变量可用于获取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以及使用构建步骤的上游管道构建获
$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'
}