Schedule Step
The Schedule step blocks until the current date/time evaluates to the given cron expression, or the configured FlexDeploy group overrides to continue.
Field | Description |
---|---|
Step Name | The name of the gate. |
Description | An optional description for the step. |
Schedule Cron Expression | The FlexDeploy group which is responsible for approving or rejecting the task associated with this step. Sample cron expressions are provided in the drop-down. A free cron expression builder such as Cron Maker can also be used, but it must be compatible with |
Schedule Override Role | The pipeline role which is allowed to continue execution prior to the step completing on the configured schedule. |
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 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. |
For details on Cron Expression Syntax see
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