CI/CD (intégration et livraison continues)

CI and CD are two different questions asked by the same automated chain, which replays the same steps on every code push. **CI** (continuous integration) asks: is this code safe to merge? It installs dependencies, runs the linter and the tests, builds, scans for known vulnerabilities, and if a step fails the chain turns red: the code is not merged until it is fixed. **CD** asks: can we safely release it? It produces a release artifact (often a Docker image), deploys it to staging, then to production. The term CD covers two practices that most people mix up. With **continuous delivery**, every validated change stays ready to ship, but a person clicks "deploy" for production. With **continuous deployment**, that click disappears: whatever passes the checks ships to production on its own. That leaves the choice of rollout. A version can replace the old one in waves (*rolling*), go live next to the old one and then switch over in one step (*blue-green*, instant return by switching back), or be served first to a small share of visitors (a *canary*: 5%, then 25, 50, 100%, rolling back if the error rate rises). A deployment is not judged on "the server started" but on health checks that pass, hence the link with monitoring. The real gain is not speed, it is repeatability: the deployment is written as code, the same steps run every time. Without that, one step forgotten by hand (the database migration) is enough to produce a 502 in production ([Instagram reel DeCf1khst4y](https://www.instagram.com/reel/DeCf1khst4y/), RickTheEngineer, video captured on 3 October 2026).

Official site

View on Coeurdar