The matrix project module handles creating Jenkins matrix projects. To create a matrix project specify matrix in the project-type attribute to the Job definition. Currently it only supports three axes which share the same internal YAML structure:
Job Parameters: |
|
---|
Example:
- job:
name: matrix-test
project-type: matrix
execution-strategy:
combination-filter: |
!(os=="fedora11" && arch=="amd64")
sequential: true
touchstone:
expr: 'os == "fedora11"'
result: unstable
axes:
- axis:
type: label-expression
name: os
values:
- ubuntu12.04
- fedora11
- axis:
type: label-expression
name: arch
values:
- amd64
- i386
- axis:
type: slave
name: nodes
values:
- node1
- node2
builders:
- shell: make && make check
Example using user-defined axis:
- job:
name: matrix-user-defined
project-type: matrix
axes:
- axis:
type: user-defined
name: database
values:
- mysql
- postgresql
- sqlite
builders:
- shell: make "$database"