anatomy of the pipeline - nateleavitt/mindump GitHub Wiki
An automated manifestation of your process for getting software from the developers to the end users. The input to the pipeline is a particular revision in version control. Every change creates a build that will pass through a sequence of tests multiple times before going to production. This ensures that continuous tests are done and you are able to capture bugs faster.
- this prevents you from releasing builds that are not fit for their intended purpose.
- when deployment and production releases are automated, they are rapid, repeatable, and reliable.
Deployment Pipeline Practices
- Only build your binaries once
- Deploy the same way to EVERY environment
- Smoke-test your deployments
- Deploy into copy of production
- Each change should propagate through the pipeline instantly
- If any part of the pipeline fails, stop the line