The Pre-deploy All step runs the pre-deploy workflows for all project versions (or packages) in the snapshot. Each project configured in release with a pre-deploy workflow configured will be executed in this step. Snapshot is created based on projects included in release. This is very important step to make pipeline reusable across releases. The Pre-deploy All step will run the pre-deploy workflows for all the projects in parallel. The priority set for the release projects is not used in Pre-deploy All step. You can use project groups with more than one Pre-deploy All step to control sequencing of pre-deploy executions. For example, pre-deploy DB changes, pre-deploy all applications etc.

Additionally, the pre-deploy workflows are only executed for projects (or packages) if the current project version is not already deployed to the current stage (environment) unless Force Deploy is checked. Checking Force Deploy will cause the pre-deploy workflows to run whether the deployment was completed or not.

Field

Description

Step Name

The name of the step.

Description

An optional description for the step.

Project Groups

Identifies which group or groups from the snapshot to run the Pre-deploy workflows.  The project groups are defined by the pipeline, and tagged on the projects/packages in the release.  If no groups are specified, all projects/packages from the snapshot will be included.

Exclude Project GroupsSkip deploying any projects/packages from the snapshot which are tagged in the release with the selected project group(s).  Available project groups are defined by the pipeline.
Force Deploy

Whether or not to force deploy the projects.  If true, this is equivalent to checking force deploy when individually deploying a project to an environment through the deploy request form.  Optionally, use a Groovy expression to make this field dynamic based on some contextual value (e.g. a property defined on the pipeline, and specified on the release).

Checking this will cause the Pre-deploy workflow to run even if the same project (package for partial deploy) version is already deployed to this stage (environment).

Precondition

An optional Groovy script which determines whether the step is applicable during execution. The script has access to variables and methods listed in Pipeline Groovy Variables and Methods. You can find these variables methods using Variable Lookup help.

The script must return true if the step is applicable, or false otherwise.  If no script is provided, the default is to return true (applicable).

ContinueIf checked, any failure will be ignored, and the pipeline execution will continue to next step.
Notify Pipeline RolesSelects one or more roles from the pipeline definition to notify in case of error.  Default role members are defined on the pipeline, and optional overridden for each release.


The Pre-deploy All step allows the output from the Pre-deploy workflows to flow into the Deploy workflow inputs for each project. For this to work, workflow developers must use the same name and data type for the Pre-deploy output(with "Return As Output" selected) and Deploy input variables in the respective workflows.

Script Variables