首页/开发/CI/CD 与发布速查/矩阵构建(Matrix)
流水线设计54 条

矩阵构建(Matrix)

一个定义展开成多组参数组合(多版本、多平台、多配置),天然并行,适合跨语言版本与跨操作系统验证。

CI/CD 与发布速查开发更新于 2026-10-12
GitHubstrategy.matrix 配 include/exclude,fail-fast 可关闭
GitLabparallel:matrix 基于变量组合展开作业
Jenkins声明式 pipeline 的 matrix 指令

GitHub matrix

GitHub matrix
jobs:
  test:
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest, windows-latest]
        node: [20, 22]
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/setup-node@v4
        with: {node-version: '${{ matrix.node }}'}
组合数等于各维度取值相乘;用 exclude 去掉不可能组合,控制规模。

易错点

  • 矩阵规模失控:3 个维度各 5 个取值就是 125 个作业,按风险挑选代表组合
  • fail-fast 默认开启:一个组合失败会取消其余组合,需要完整报告时显式关闭

数据来源与参考

  • GitHub Docs《Using a matrix for your jobs》
  • GitLab Docs《Parallel: matrix》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌