In earlier chapters, you learned about several automatic infrastructure configuration tools. While these tools are indeed great, even more important from an organization’s perspective are tools and techniques that let you deploy error–free applications to serve your customers in a fast manner.
This chapter deals with three important topics that are part of every administrator’s work: Continuous Integration (CI), and Continuous Delivery (CD):
Continuous Integration is the focus on building code, running tests, and making sure that code is in a “clean” state. The goal is the evolution of the latest version of the software into something that you can work with – older builds and changes become less important as you transition through the changes.
Continuous delivery is the getting ready of tested code for deployment anytime you’re ready.
Continuous deployment is the deployment of a set of changes to one or more environments. You usually have a pipeline with multiple decision points, parallel flows, and go forward and rollback steps, In other words, continuous delivery is a complex workflow with specialized actions such as rolling deployments and contacting the servers.
DevOps is a difficult concept to define, in my opinion. If you apply an expansive definition, just about everything in this book comes under the purview of Devops. However, DevOps originated in the area of continuous integration ...