Canary deployments
Description
To reduce risk during a deploy, a common practice is to deploy new code to a (small) portion of the production fleet.
Provide canary template for .gitlab-ci.yml
, update auto deploy template, handle/display simultaneous different versions in deployboard.
Proposal
- Augment
.gitlab-ci.yml
for auto-deploy to include acanary
stage as an optional manual action - Handle/display simultaneous different versions in deployboard
- Augment environment list and deployment histories to understand simultaneous different versions
Links / references
- Depends on https://gitlab.com/gitlab-org/gitlab-ee/issues/1589
- Alternative proposal: incremental rollout strategy
- Pausing and Resuming a Deployment
- Canary deployments