CD vs CI
Het staat voor continuous deployment.
| CD | CI | |
|---|---|---|
| Definition | Continuous Deployment (CD) is een benadering van software-engineering waarbij codewijzigingen automatisch naar de productieomgeving worden uitgerold via een reeks geautomatiseerde tests. | Continuous Integration (CI) is een softwareontwikkelingspraktijk waarbij ontwikkelaars regelmatig hun codewijzigingen integreren in een centrale repository, gevolgd door geautomatiseerde builds en tests. Het is een centrale praktijk binnen de DevOps-filosofie. |
| Categories | DevOps, alm, automatisering, ci, deploy, release | ALM, CI, DevOps, automatisering, kwaliteit, ontwikkeling |
Wat is CD?
Het staat voor continuous deployment.
Definitie
Continuous Deployment (CD) is een benadering van software-engineering waarbij codewijzigingen automatisch naar de productieomgeving worden uitgerold via een reeks geautomatiseerde tests.
Proces
Nieuwe codewijzigingen doorlopen een testpipeline, en als ze worden goedgekeurd, worden ze direct uitgerold naar de productieomgeving.
Voordelen
Continuous deployment versnelt de levering van software, verkort de time-to-market voor nieuwe functies en maakt snellere feedbackcycli mogelijk.
Foutenopsporing
Frequentere implementaties vergemakkelijken het vinden en oplossen van bugs, omdat de fouten recenter en gemakkelijker te traceren zijn.
Wat betekent CI?
Het staat voor Continuous Integration.
Definitie
Continuous Integration (CI) is een softwareontwikkelingspraktijk waarbij ontwikkelaars regelmatig hun codewijzigingen integreren in een centrale repository, gevolgd door geautomatiseerde builds en tests. Het is een centrale praktijk binnen de DevOps-filosofie.
Automatisering
CI bevat zowel een culturele component, die frequente integratie bevordert, als een automatiseringscomponent. Codewijzigingen activeren geautomatiseerde processen om uitvoerbare software te creëren.
Vertrouwen
Frequent integreren genereert vertrouwen dat de codebase altijd in een werkende staat verkeert.
Testdekking
CI moet een uitgebreide reeks geautomatiseerde tests omvatten om verschillende aspecten van de software te dekken en de kwaliteit te waarborgen.