小编Chr*_*etz的帖子

Jenkins 声明式管道:矩阵构建轴的顺序执行

我正在尝试建立一个矩阵构建并遇到几个问题。矩阵看起来像:

stage( 'BuildAll' ) {
    matrix {
        axes {
            axis {
                name 'PLATFORM'
                values 'win32vc9', 'win32vc19' 
            }                   
            axis {
                name 'VARIANT'
                values 'debug', 'release'                   
            }
            axis {
                name 'MODULES'
                values 'repo1/module1', 'repo1/module2', 'repo2/module1', 'repo2/module2'
            }
        }

        stages {                                                
            stage( 'Checkout' ) {
            }
            stage( 'Build' ) {
            }
            stage( 'Test' ) {
            }
       }
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是:

  • 詹金斯正在其自己的工作区中执行矩阵的每个单元,但我的模块相互依赖。这就是为什么我想检查它们并在同一个工作区中构建它们。顺便说一句:我的构建系统可以在同一工作区中使用所有变体(调试/发布 x vc9/vc19)。

  • 詹金斯正在并行执行所有单元。我需要的是模块轴执行的序列化。

我有什么想法可以解决这个问题吗?

例如,有没有一种方法可以描述类似多个模块的循环,这些模块会连续生成一系列阶段,而不是并行的?在该序列中,我只能实现两个轴上的矩阵。

我知道扩展工作区插件,但没有找到任何有关如何在声明性管道中使用它的文档。

提前谢谢了!问候,克里斯托夫

declarative matrix jenkins jenkins-pipeline

5
推荐指数
3
解决办法
4700
查看次数

标签 统计

declarative ×1

jenkins ×1

jenkins-pipeline ×1

matrix ×1