Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 30 Next »

A pipeline is a workflow which orchestrates the delivery of snapshots across the stages/environments.  While a deploy workflow defines the implementation for the delivery of a single build artifact into an environment, the pipeline operates at a higher level, and orchestrates the propagation of many deployments across many environments. The pipeline includes facilities for approvals, manual tasks, scheduling, deployments, and much more.


An example pipeline definition with three stages (environments).

The pipeline above has three stages, Development, QA, and Production.  The Development stage does not have any gates, which means the steps begin execution immediately.  The "Deploy All Projects" step deploys all of the project versions in a snapshot into the Development environment, which utilizes the deploy workflow of the underlying projects to facilitate this work. The QA stage has three gates.  The "Dev Quality Check" gate verifies that tests for the projects in the snapshot in Development meet the configured qualifier metrics.  If the qualifier metrics did not pass then the gate fails, otherwise, the gate completes and it transitions to the next gate.  The "QA Manager Approval" gate creates an approval task for the QA Manager group and blocks execution until approved.  Once approved, the "Every Day at Noon" scheduled gate blocks execution until 12pm. When the schedule is reached, the "Deploy All Projects" step for QA is executed.  When the deployment is complete, the pipeline execution transitions to the Production stage and executes its gates and steps (similar to QA). 


Gate Types

Type

Description

Approval

Creates an approval task for the defined group, and blocks transition until the task is approved.  If the task is rejected, the stage execution is marked as failed, and execution is terminated.

External ApprovalCreates an approval task tied to an external system (e.g. ServiceNow), and blocks transition until the task is approved.  If the task is rejected, the stage execution is marked as failed, and execution is terminated.

Schedule

Blocks transition until the defined schedule is reached, or overridden by a user with appropriate privileges.

Test

Evaluates the test qualifiers for any tests which were executed for the same snapshot in the configured environment.  The gate is successful if the qualifiers determines success, or fails otherwise.

 

Step Types

Type

Description

Deploy

Deploys a single project version from the snapshot to the current stage.

Deploy All

Deploys all project versions from the snapshot to the current stage, using the deploy priorities configured on the release.

Test

Executes tests in the current stage for a single project, according to the defined strategy (on the project). 

Test All

Executes tests in the current stage for all projects in the snapshot, according to the defined strategy (on the projects).
UtilityExecutes a single utility workflow in the current stage.
Execute All UtilityExecutes all utility projects in the release for the current stage according to the deploy priorities.
GroupA container for other steps to be executed serially.  Useful to execute the entire group in parallel to another step or group.
WaitHalts execution for a configured number of seconds, or until a particular date and time.
ManualHalts execution waiting for the task to be marked complete by a user in the defined group.
ScheduleHalts execution until the date/time evaluated by the given cron expression is reached.
Execute AllDeploys all projects versions in the snapshot and executes all utility workflows defined in the release, using the configured deploy priorities.

 

  • No labels