jenkinsfile 变量作用域 举例
时间: 2024-02-22 12:53:50 浏览: 93
Jenkinsfile 是用于定义 Jenkins Pipeline 的脚本文件,它可以用来描述整个构建过程的流程和步骤。在 Jenkinsfile 中,变量的作用域可以分为全局作用域和局部作用域。
1. 全局作用域:在 Jenkinsfile 的顶层定义的变量具有全局作用域,可以在整个 Pipeline 中被访问和使用。这些变量可以被所有的阶段和步骤引用。
2. 局部作用域:在 Jenkinsfile 的阶段或步骤中定义的变量具有局部作用域,只能在当前阶段或步骤中被访问和使用。这些变量在当前作用域内有效,超出当前作用域后将不再可见。
下面是一个示例,演示了 Jenkinsfile 中变量的作用域:
```groovy
def globalVariable = "I am a global variable"
pipeline {
agent any
stages {
stage('Stage 1') {
steps {
script {
def localVariable = "I am a local variable"
echo "Global variable: ${globalVariable}"
echo "Local variable: ${localVariable}"
}
}
}
stage('Stage 2') {
steps {
script {
echo "Global variable: ${globalVariable}"
// Local variable cannot be accessed here
}
}
}
}
}
```
在上面的示例中,`globalVariable` 是一个全局变量,在整个 Pipeline 中都可以被访问。`localVariable` 是一个局部变量,只能在 `Stage 1` 中被访问。
阅读全文