一尘不染

我可以在Jenkins管道中动态创建阶段吗?

jenkins

我需要在声明式管道中启动一组动态测试。为了更好的可视化目的,我想为每个测试创建一个阶段。有办法吗?

创建一个我知道的阶段的唯一方法是:

stage('foo') {
   ...
}

我已经看到了这个示例,但是我没有使用声明性语法。


阅读 244

收藏
2020-07-25

共1个答案

一尘不染

使用声明性语法比声明性语法更具灵活性的脚本化语法,即使声明性文档和建议性更多。

例如,可以循环创建阶段:

def tests = params.Tests.split(',')
for (int i = 0; i < tests.length; i++) {
    stage("Test ${tests[i]}") {
        sh '....'
    }
}
2020-07-25