Execute All Step
The Execute All step is a hybrid which performs the function of both the Deploy All and Execute All Utility steps. Â That is, it deploys all project versions in the snapshot and executes all utility projects defined in the release, taking into account the priority defined on the release.
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 deploy.  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 Groups | Skip 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. |
Project Groups | Identifies which group or groups (coma separated) from the snapshot to deploy (or from the release to execute for Utility projects). Â The group name(s) must match those defined on the projects in the release. Â If no group is specified, all projects in the release will be deployed/executed. |
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). This field is not applicable to Utility projects. |
Precondition | An optional Groovy script which determines whether the gate or step is applicable during execution.  The script has access to variables and methods listed in the expression drop-down.  The script must return true if the gate/step is applicable, or false otherwise.  If no script is provided, the default is to return true (applicable). |
Continue | If checked, any failure will be ignored, and the pipeline execution will continue. |
Notify Pipeline Roles | Optionally selects 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 Execute All step uses the priority for each project/package contained within the release. Â If a deployment fails, projects or packages with a higher priority will not be submitted, and the step will fail.Â
If the projects have FlexFields or Inputs defined, values must be provide on the stage execution info screen. Â If the values are required and not specified, the underlying workflow execution will fail.
Script Variables
Optionally, a Groovy script can be written for any Subject, Message, and Precondition fields. The script has access to the following variables and methods listed in the expression drop-down.
Variable | Description |
---|---|
ReleaseName | Name of the release provided when created |
SnapshotName | Name of the snapshot (auto generated by date and time when created) |
SnapshotDuplicateFilesFlag | True if there are duplicate files in the snapshot |
SnapshotDescription | Description of the snapshot |
StageExecutionId | ID of the execution |
Methods for FD_Release variable.
Method | Description |
---|---|
FD_Release.areAllProjectsDeployed() | returns true if all projects in snapshot are deployed |
FD_Release.areAllProjectsDeployed(groupName) | returns true if all projects in a specific group are deployed |
FD_Release.areAllUtilitySuccessful() | returns true if all utility workflows were successful |
FD_Release.areAllUtilitySuccessful(groupName) | returns true if all utility workflows in a specific group were successful |
FD_Release.getEnvironmentCode() | returns environment code |
FD_Release.getReleaseName() | returns the name of the release |
FD_Release.getProjectStageExecution(projectId, packageName) | returns ProjectStageExecution given a project ID and package name |
FD_Release.getProjectStageExecution(projectName, packageName) | returns ProjectStageExecution given a project name and package name |
FD_Release.getSnapshotName() | returns the name of the snapshot |
FD_Release.getSnapshotProjects() | returns the projects in the snapshot |
FD_Release.getSnapshotProjectsAsString() | returns all project names in snapshot concatenated in the format "ProjectName, PartialProjectName (PackageName), ..." |
FD_Release.getSnapshotDeployedProjects() | returns the projects in the snapshot which were deployed |
FD_Release.getSnapshotDeployedProjectsAsString() | returns all deployed project names in snapshot concatenated in the format "ProjectName, PartialProjectName (PackageName), ..." |
FD_Release.getSnapshotFailedProjects() | returns the projects in the snapshot which failed to deploy |
FD_Release.getSnapshotFailedProjectsAsString() | returns all failed project names in snapshot concatenated in the format "ProjectName, PartialProjectName (PackageName), ..." |
FD_Release.getSnapshotSkippedProjects() | returns the projects in the snapshot which were skipped |
FD_Release.getSnapshotSkippedProjectsAsString() | returns all skipped project names in snapshot concatenated in the format "ProjectName, PartialProjectName (PackageName), ..." |
FD_Release.getSnapshotNotAttemptedProjects() | returns the projects in the snapshot which were not attempted |
FD_Release.getSnapshotNotAttemptedProjectsAsString() | returns all not attempted project names in snapshot concatenated in the format "ProjectName, PartialProjectName (PackageName), ..." |
FD_Release.isAnyDeployFailed() | returns true if any projects failed to deploy |
FD_Release.isAnyDeployFailed(groupName) | returns true if any projects in a specific group of projects failed to deploy |
FD_Release.isAnyDeployOrUtilityFailed() | returns true if any projects or utility workflows failed |
FD_Release.isAnyDeployOrUtilityFailed(groupName) | returns true if any projects or utility workflows in a specific group failed |
FD_Release.isAnyUtilityFailed() | returns true if any utility workflows failed |
FD_Release.isAnyUtilityFailed(groupName) | returns true if any utility workflows in a specific group failed |
FD_Release.isProjectDeployed(projectId, packageName) | returns true if a project is deployed, given the project ID and package name |
FD_Release.isProjectDeployed(projectName, packageName) | returns true if a project is deployed, given the project name and package name |
FD_Release.isProjectFailed(projectId, packageName) | returns true if a project failed to deploy, given the project ID and package name |
FD_Release.isProjectFailed(projectName, packageName) | returns true if a project failed to deploy, given the project name and package name |
FD_Release.isProjectSkipped(projectId, packageName) | returns true if a project is skipped, given the project ID and package name |
FD_Release.isProjectSkipped(projectName, packageName) | returns true if a project is skipped, given the project name and package name |
FD_Release.isProjectNotAttempted(projectId, packageName) | returns true if a project was not attempted, given the project ID and package name |
FD_Release.isProjectNotAttempted(projectName, packageName) | returns true if a project was not attempted, given the project name and package name |
- style