Once a release plan is finalized, it's time to test it and deploy it to non-production environments. Releases are implemented by deployments. A deployment targets a single phase and its associated environment (remember that each phase has a single environment associated with it). A deployment can be broad-based and use all applications in a release, represent a 1-off emergency deployment of, say, a single application, or anything in between. Deployments can be as precisely targeted as necessary.
UrbanCode Release's deployments brings together:
Deployment, or deployment plans, are composed of segments. A segment represents release activities intended to be completed together. A segment can be configured to run after the successful completion of another segment, or can run independently of any other segment. A deployment plan can have any number of segments. The default plan has two segments: Pre-Deployment Tasks, and Deployment Tasks.
Once a deployment plan is defined, a deployment can be initiated at any time with a deployment request. A deployment request can start an entire deployment or a portion of the plan, such as an individual segment.
Tip
Ensure every team has a fall-back plan in addition to its primary one. The fallback plan can be a simple as rolling-back to an old version until blocks are resolved.