Continuous Delivery
- is a practice of automating the entire software release process
- The idea is to do CI, plus automatically prepare and track a release to production
- The desired outcome is that anyone with sufficient privileges to deploy a new release can do so at any time in one or a few clicks
- By eliminating nearly all manual tasks, developers become more productive
- The CD process typically includes at least one manual step of approving and initiating a deploy to production
- In complex systems with multiple dependencies, the CD pipeline may include additional steps, which are either manual or automatic
- Atlassian website:
- Continuous delivery is an extension of continuous integration since it automatically deploys all code changes to a testing and/or production environment after the build stage
- This means that on top of automated testing, you have an automated release process and you can deploy your application any time by clicking a button
- In theory, with continuous delivery, you can decide to release daily, weekly, fortnightly, or whatever suits your business requirements. However, if you truly want to get the benefits of continuous delivery, you should deploy to production as early as possible to make sure that you release small batches that are easy to troubleshoot in case of a problem