我的项目有许多其他项目的通用变量,所以我使用 Jenkins 共享库并创建了一个vars/my_vars.groovy文件,我在其中定义了我的变量并返回了它们的映射:
class my_vars {
static Map varMap = [:]
static def loadVars (Map config) {
varMap.var1 = "val1"
varMap.var2 = "val2"
// Many more variables ...
return varMap
}
}
Run Code Online (Sandbox Code Playgroud)
我在我的 Jenkinsfile 中加载共享库,并在环境项目符号中调用该函数,因为我希望这些变量作为环境变量。
詹金斯档案:
pipeline {
environment {
// initialize common vars
common_vars = my_vars.loadVars()
} // environment
stages {
stage('Some Stage') {
// ...
}
}
post {
always {
script {
// Print environment variables
sh "env"
} // script
} // …Run Code Online (Sandbox Code Playgroud)