ezl*_*lee 19 groovy jenkins jenkins-pipeline
如何在Jenkinsfile中调用全局环境变量?
例如,如果我有一个变量 -
name:credentialsId
value:xxxx-xxxx-xxxxx-xxxxxxxxx
Run Code Online (Sandbox Code Playgroud)
如何在groovy脚本中使用它?
我试过了${credentialsId},但没办法.它只会给出错误:
java.lang.NoSuchMethodError: No such DSL method '$' found among steps [ArtifactoryGradleBuild, ........
Run Code Online (Sandbox Code Playgroud)
Von*_*onC 39
在Jenkins文件中,您有" 使用环境 ",其中提到:
可从Jenkins管道中访问的环境变量的完整列表记录在localhost:8080/pipeline-syntax/globals#env中,
语法${env.xxx}如下:
node {
echo "Running ${env.BUILD_ID} on ${env.JENKINS_URL}"
}
Run Code Online (Sandbox Code Playgroud)
另请参阅" 管理环境 ".
如何将全局变量传递给Jenkinsfile?
当我说全局变量 - 我的意思是
Jenkins -> Manage Jenkins -> Configure System -> Global properties -> Environment variables
Run Code Online (Sandbox Code Playgroud)
请参阅" 设置环境变量 "
在Jenkins管道中设置环境变量可以通过
withEnv步骤完成,该步骤允许覆盖给定的管道脚本块的指定环境变量,例如:Jenkinsfile(管道脚本)
node {
/* .. snip .. */
withEnv(["NAME=value"]) {
... your job
}
}
Run Code Online (Sandbox Code Playgroud)