Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Each pipeline can have optional headers defined. A pipeline header is similar to a an HTTP header and defines a global “configuration item” for the overall execution of the pipeline. In the example below, you can see a pipeline with a header defined in the headers section:

...

This is an optional value to define globally per pipeline what should happen if a single command in this pipeline has an error / exception. It is possible to define the short form or the long form of the header value, in order to specify additional parameters. Possible values are:

Short Value

Long Value

Description

IGNORE

{"action": "IGNORE"}

Only the exception message (not the full stacktrace) is logged as warn, but no exception is thrown. So, next command in the pipeline will be executed.

LOG

{"action": "LOG"}

The full stacktrace of the exception is logged as an error, but no exception is thrown. So, next command in the pipeline will be executed.

THROW

{"action": "THROW"}

An exception is thrown, and the pipeline execution is stopped at this command. This is the default behavior in case this header doesnt exist or is empty.

RETRY

{"action": "RETRY", "times": 3, "wait": 2, "then": "THROW"}

If command caused an error, the command is again executed whereas all parameters are optional: wait: the time to wait in seconds before the next retry starts (default = 3). times: the number of retries before giving up (default = 1). then: the action to do after the retry was not successfull (one of IGNORE, LOG, or THROW)(default = THROW).

N/A

{"action": "ROLLBACK", "pipeline": "uri:property:global/app/.../rollback"}

If command caused an error, the given pipeline is loaded and executed which contains the rollback logics. Note: This action is a preview. It is not part of the main branch, yet.

runAs

DEPRECATED Since version 7.0. Use the command iam.run.as or the pipeline header Authorization: RunAs USERNAME instead. A username of a user under which this pipeline must be executed as. It has the same functionality as the command iam.run.as.

...