The YAML schema for Matrix native step is as shown below. For more information on Matrix for Pipelines steps, see Matrix.
Matrix
pipelines: - name: <string> steps: - name: <string> type: Matrix stepMode: Bash configuration: #inherits from Bash concurrency: <string> multiNode: <boolean> # optional, only needed if steplets # need to execute on separate nodes execution: onStart: - echo "Preparing for work..." onExecute: # required - echo "Executing steplet $step_name" - echo "env1 = $env1" - echo "env2 = $env2" onSuccess: - echo "Job well done!" onFailure: - echo "uh oh, something went wrong" onComplete: # always - echo "Cleaning up some stuff" stepletMultipliers: nodePools: # wants to execute step against - windows # multiple operating systems - ubuntu_18 - ubuntu_16 environmentVariables: # optional, only needed if user - env1: one # wants to execute step against env2: two # multiple values of env - env1: abc env2: xyz runtimes: # optional, only needed if user - type: image # wants to execute step against image: # multiple images auto: language: version: custom: <same config as Bash> image: auto: language: version: custom: <same config as Bash> fastFail: <true/false> # default false. If specified, matrix # step fails when any steplet fails, # unless specified in allowFailures allowFailures: # optional, array of combinations - nodePool: # that are allowed to fail environmentVariables: env1: abc env2: xyz runtime: exclude: # optional, array of combinations - nodePool: # that are not executed environmentVariables: env1: one env2: two runtime: