jenkins内置提供的全局变量
列出环境变量
让我们首先列出所有可用的环境变量。您可以通过两种不同的方法进行操作。您可以${YOUR_JENKINS_HOST}/env-vars.html在Jenkins主服务器上打开页面,以获取HTML页面上列出的所有环境变量的列表
方法2:
pipeline {
agent any
stages {
stage("Env Variables") {
steps {
sh "printenv" }
}
}
}
使用printenv | sort命令组合来获取环境变量的排序列表可能很有用
读取环境变量
您可以在通过env对象的管道步骤中访问环境变量,例如,env.BUILD_NUMBER将返回当前的内部版本号。您也可以使用简写版本BUILD_NUMBER,但是在此变体中,这可能会使某些用户感到困惑-它缺少BUILD_NUMBER来自环境变量的上下文
pipeline {
agent any
stages {
stage("Env Variables") {
steps {
echo "build number is ${env.BUILD_NUMBER}"
echo "You can also use ${BUILD_NUMBER} -> ${BUILD_NUMBER}"
sh 'echo "I can access $BUILD_NUMBER in shell command as well."' }
}
}
}
设置环境变量
可以使用environment { }block 来声明性地设置环境变量,必须使用env.VARIABLE_NAME或命令来设置环境变量withEnv(["VARIABLE_NAME=value"]) {}
pipeline { agent any environment { FOO = "bar" } stages { stage("Env Variables") { environment { NAME = "Alan" } steps { echo "FOO = ${env.FOO}" echo "NAME = ${env.NAME}" script { env.TEST_VARIABLE = "some test value" } echo "TEST_VARIABLE = ${env.TEST_VARIABLE}" withEnv(["ANOTHER_ENV_VAR=here is some value"]) { echo "ANOTHER_ENV_VAR = ${env.ANOTHER_ENV_VAR}" } } } }}
使用sh捕获环境变量
您还可以将shell命令的输出捕获为环境变量。请记住,您需要使用sh(script: 'cmd', returnStdout:true)格式来强制sh步骤返回输出,以便可以捕获它并将其存储在变量中
pipeline { agent any environment { LS = "${sh(script:'ls -lah', returnStdout: true)}" } stages { stage("Env Variables") { steps { echo "LS = ${env.LS}" } } }}
需要写成这样:
echo env.WORKSPACE
标签:内置,NUMBER,echo,sh,BUILD,env,jenkins,全局变量,环境变量 From: https://blog.csdn.net/lisanmengmeng/article/details/143033388