Matrix

JFrog Pipelines Documentation

ft:sourceType
Paligo

The Matrix step commences multiple parallel build processes across multiple containers, with different settings for each.

Common use cases for Matrix steps are:

  • Splitting a large test suite into smaller units, and executing them in parallel to reduce total execution time.

  • Testing against multiple values of environment variables or multiple runtime images.

  • Testing against multiple base operating system versions.

The matrix configuration can specify:

  • Multiple sets of environment variable definitions

  • Multiple runtime images

  • Multiple node pools

  • Multiple operating systems

The Matrix step executes the specified shell scripts multiple times in parallel steplets, in each specified runtime for each set of environment variables on each specified platform. For example, if a Matrix step specifies 3 sets of environment variables and 2 runtime images, it will run a total of 6 steplets (3 times in runtime 1, 3 times in runtime 2). If the Matrix step also specifies 2 node pools, it will run 12 steplets.

A Matrix step can be optionally preceded by a PreMatrix step to prepare the build node environment for the steplets, and a PostMatrix step to aggregate information produced by the steplets. For more information, see Using the Matrix Step.

Note

Matrix step is available for Linux nodes only.

The following topics provide more information on Matrix Pipeline steps: