Matrix - Tags

JFrog Pipelines Documentation

Products
JFrog Pipelines
Content Type
User Guide
ft:sourceType
Paligo

This topic lists tags that can be used with Matrix Pipeline steps. For more information on Matrix for Pipelines steps, see Matrix.

name

An alphanumeric string (underscores are permitted) that identifies the step.

type

Must be Matrix for this step type.

stepmode

Specifies the runtime OS mode. May be either Bash or PowerShell. If not specified, defaults to Bash.

configuration

Specifies all configuration selections for the step's execution environment. This step inherits the Bash/ PowerShell step configuration tags, including these pertinent tags:

Tag

Description of usage

Required/Optional

inputStep

May specify a PreMatrix preamble step.

Optional

In addition, these tags can be defined to support the step's native operation:

Tag

Description of usage

Required/Optional

multiNode

When true, steplets will be required to run on separate nodes. Default is false.

For more information, see Multi-node Matrix.

Note

When both multiNode and concurrency are used, multiNode takes precedence.

Optional

concurrency

Define the number of steplets that can concurrently run on a node. This helps in optimizing resource usage and ensures that the node efficiently handles steplets without being overwhelmed.

Note

When both multiNode and concurrency are used, multiNode takes precedence.

Optional

stepletMultipliers

In addition, these tags can be defined to support the step's native operation:

Tag

Description of usage

Required/Optional

nodePools

A collection of node pool names. Recognized only when multiNode is set to true. When specified, the step will be executed in each of the defined runtimes for each set of environmentVariables on each node pool.

If not defined, the step will be executed in the default node pool, or the node pool specified in the configuration section.

Example

steps:
- name: step_1
  type: Matrix
  stepMode: Bash
  configuration:
    multiNode: true
  stepletMultipliers:
    environmentVariables:
      - foo: foo
      - bar: bar
    nodePools:
      - gcp
      - aws 

Optional

environmentVariables

A collection of sets of environment variable definitions. Each set of definitions will be used in an execution of a steplet in each of the defined runtimes.

If not defined, then a single steplet will execute for each of the defined runtimes on each of the specified nodePools.

Optional

runtimes

A collection of runtime definitions. The step will be executed in each defined runtime, on each of the specified nodePools, for each set of environmentVariables.

If not defined, then each steplet will be executed in the default runtime, or the runtime specified in the configuration section.

Optional

fastFail

When set to true the step fails when any steplet fails, unless permitted to fail in allowFailures.

Default is false.

Optional

allowFailures

A collection that specifies the combinations of nodepools, environmentVariables, and runtimes that are permitted to fail without terminating the entire Matrix step. This only has effect when fastFail is set to true.

Optional

exclude

A collection that specifies the combinations of nodepools, environmentVariables, and runtimes that will not be executed.

Optional

execution

Declares collections of shell command sequences to perform for pre- and post-execution phases:

Tag

Description of usage

Required/Optional

onStart

Commands to execute in advance of onExecute

Optional

onExecute

Main commands to execute for the step

Optional

onSuccess

Commands to execute on successful completion

Optional

onFailure

Commands to execute on failed completion

Optional

onComplete

Commands to execute on any completion

Optional

Caution

onExecuteonStartonSuccessonFailure, and onComplete are reserved keywords. Using these keywords in any other context in your execution scripts can cause unexpected behavior.