我想将多个when 子句放在一个阶段中。这是基本示例
def foo = 0
pipeline {
agent any
stages {
stage('Hello') {
when {
expression {foo == 0}
}
steps {
echo 'foo is 0'
}
when {
expression {foo == 1}
}
steps {
echo 'foo is 1'
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试这个时,我收到一个错误
Multiple occurrences of the when section
Run Code Online (Sandbox Code Playgroud)
实际上我真正的问题是不同的,但解决这个问题可能会解决我真正的问题。提前致谢
Van*_*ano 11
看来按预期使用指令会更好:
多种的when,如果你寻找一个简单的 if else 逻辑,它就在那里:
if声明:Run Code Online (Sandbox Code Playgroud)stage { steps { script { if (foo == 0){ echo 'foo is 0' } else if (foo == 1){ echo 'foo is 1' } } } }
如果您想在
2 中使用嵌套条件,请执行以下操作when:
Run Code Online (Sandbox Code Playgroud)stage { when { anyOf { environment name: 'VAR_1', value: '1' branch 'production' } } steps { <your steps> }
| 归档时间: |
|
| 查看次数: |
14598 次 |
| 最近记录: |