Continuous Intregration is het automatiseren van de integratie van wijzigingen in de code. Het werk van meerdere developers moeten in hetzelfde systeem komen. Het enablen van developers om makkelijker en frequenter wijzigingen te maken is waar het bij continuous integration om draait.
Continuous integration is een kernprincipe van de DevOps best practices. Ervoor zorgen dat aanpassingen aan de code zo snel mogelijk opgenomen kunnen worden in het product met een geautomatiseerde builds en tests zet de eerste stap naar het controleren of the nieuwe code correct is.
Bij continuous integration is de centrale speler het versioneringssysteem (source code version control system). Het version control system word vaak verreikt met andere geautomatiseerde checks zoals code kwaliteit, syntax, reviews.
Continuous delivery bouwt verder op continuous integration. Bij continuous delivery zorg je ervoor dat je automatisch kunt releasen naar je omgevingen, of dit nou test of productie is. In theorie kan je met een correctie invulling van continuous delivery zelf bepalen wanneer er wat gereleased word en naar welke omgeving.
Door dit te automatiseren word er een afhankelijkheid op een operations team weggenomen en kunnen de teams zich focussen op zo snel mogelijk meerwaarde voor de klant creëren.
Continuous deployment trekt continuous delivery helemaal door naar volautomatisch en neemt alle manuele interventie weg. Zodra een feature klaar is en door de continuous intregration checks heen komt word deze automatisch gereleased.
CI CD is de combinatie van alle apected die hierboven zijn uitgezet om een allesomvattende pipeline te maken van de developers die de code maken tot aan de live omgevingen.