Notification Step
The Notification step sends an custom email notification to the user, group, or email address configured on the step. Â The email is sent using the configured mail server on the Administration - System Settings menu.
Field | Description |
---|---|
Step Name | The name of the step. |
Description | An optional description for the step. |
Pipeline Roles | 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. |
Subject | The subject line for the email notification.  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). |
Message | The body for the email notification.  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). Following methods were added as part of 5.0.0.2. Body to contain details on individual Project deployment status "<br/>" + "<b>Deployed Projects</b> : " + FD_Release.getSnapshotDeployedProjectsAsString() + "<br/>" + "<b>Failed Projects</b> : " + FD_Release.getSnapshotFailedProjectsAsString() + "<br/>" + "<b>Skipped Projects</b> : " + FD_Release.getSnapshotSkippedProjectsAsString() + "<br/>" + "<b>Not Attempted Projects</b> : " + FD_Release.getSnapshotNotAttemptedProjectsAsString() |
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). See below for Script Variables. |
Continue | If checked, any failure will be ignored, and the pipeline execution will continue. |
Notify Pipeline Role | 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. |
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