Cours 4 min·Informatique

DevOps et CI/CD : comprendre la fabrication logicielle moderne

Ce cours t'explique comment les équipes informatiques fabriquent et livrent des logiciels rapidement et sans casser la production. Tu comprendras d'où vient le DevOps, ce que signifie CI/CD, et comment ces pratiques s'articulent au quotidien.

1.Situer le DevOps et son origine

Avant le DevOps, deux équipes travaillaient séparément. Les développeurs écrivaient du code. Les équipes d'exploitation (les opérations) faisaient tourner ce code sur des serveurs. Ces deux mondes communiquaient peu. Résultat : un développeur livrait une nouvelle fonctionnalité, et l'équipe d'exploitation découvrait des bugs en production, parfois des semaines après. Les délais s'allongeaient, les tensions montaient. Le DevOps est né vers 2009 pour réunir ces deux métiers. Le mot vient de la fusion entre Development (développement) et Operations (exploitation). L'idée centrale : une même équipe conçoit, teste, déploie et surveille son logiciel, du début à la fin. Chez Netflix par exemple, les équipes déploient du code plusieurs fois par jour, sans attendre une validation lente d'un service séparé. Le DevOps n'est pas un outil, c'est une organisation du travail et une culture de collaboration.

  • Le DevOps réunit développement et exploitation dans une même équipe.
  • Il répond au problème des livraisons lentes et des conflits entre équipes.
  • C'est une culture de collaboration, pas un logiciel à installer.

2.L'intégration continue, ou CI

L'intégration continue, appelée CI (Continuous Integration), est une pratique simple à décrire mais puissante. Chaque fois qu'un développeur modifie du code, il l'envoie immédiatement dans un dépôt commun, plusieurs fois par jour. Un système automatique récupère ce code et lance des tests : est-ce que le programme compile, est-ce que les fonctions marchent comme prévu. Sans CI, dix développeurs pourraient travailler des semaines chacun de leur côté, puis découvrir au moment de tout assembler que rien ne fonctionne ensemble. C'est ce qu'on appelle l'enfer de l'intégration. Avec la CI, les erreurs sont détectées en quelques minutes, sur un petit changement, donc faciles à corriger. Une entreprise comme Google exécute des millions de tests automatiques chaque jour grâce à ce principe. La CI repose sur trois éléments : un dépôt de code partagé, des tests automatisés, et un déclenchement immédiat à chaque modification.

  • La CI teste automatiquement chaque modification de code envoyée au dépôt commun.
  • Elle évite l'accumulation d'erreurs difficiles à corriger en fin de projet.
  • Elle exige des tests automatisés fiables pour être utile.

3.Le déploiement continu, ou CD

Le CD prolonge la CI. Il en existe deux niveaux. Le premier, la livraison continue (Continuous Delivery), prépare automatiquement une version du logiciel prête à être installée, mais une personne décide encore du moment de la mise en ligne. Le second, le déploiement continu (Continuous Deployment), va plus loin : dès qu'un changement passe tous les tests, il part automatiquement en production, sans intervention humaine. Amazon utilise cette approche à grande échelle : une nouvelle version de code y est déployée toutes les onze secondes en moyenne sur l'ensemble de ses systèmes. Cela suppose une confiance très forte dans les tests automatisés, sinon un bug atteindrait directement les utilisateurs. Le CD réduit le temps entre l'idée d'une fonctionnalité et son usage réel, parfois de plusieurs mois à quelques heures. C'est ce raccourcissement qui donne tout son sens économique au DevOps.

  • La livraison continue prépare une version prête, la mise en ligne reste manuelle.
  • Le déploiement continu automatise aussi la mise en production.
  • Amazon illustre l'échelle possible avec des déploiements toutes les onze secondes.

4.Le pipeline et les outils courants

Un pipeline CI/CD est la chaîne d'étapes automatisées qu'un changement de code traverse, de l'écriture jusqu'à la production. Une étape typique commence par la compilation du code, puis l'exécution des tests unitaires (qui vérifient de petites parties du programme isolément), puis des tests d'intégration (qui vérifient que les parties fonctionnent ensemble), puis la construction d'un paquet déployable, et enfin le déploiement. Des outils orchestrent ce pipeline : Jenkins, GitLab CI, GitHub Actions, ou CircleCI sont parmi les plus utilisés. On y ajoute souvent Docker, qui empaquette une application avec tout son environnement dans un conteneur, garantissant qu'elle tourne pareil sur la machine du développeur et sur le serveur de production. Kubernetes gère ensuite le déploiement de nombreux conteneurs à grande échelle. Une entreprise de taille moyenne peut avoir un pipeline qui s'exécute en dix minutes, de l'envoi du code jusqu'à la mise à jour du site.

  • Le pipeline enchaîne compilation, tests, construction et déploiement de façon automatisée.
  • Docker empaquette l'application pour qu'elle tourne identiquement partout.
  • Kubernetes orchestre le déploiement de nombreux conteneurs en production.

5.Surveiller et faire confiance au système

Livrer vite ne suffit pas : il faut aussi savoir si le logiciel fonctionne bien une fois en production. C'est le rôle du monitoring, la surveillance continue des applications en fonctionnement. Des outils comme Prometheus ou Grafana collectent des mesures : temps de réponse, taux d'erreur, charge des serveurs. Si un déploiement provoque une hausse anormale des erreurs, une alerte se déclenche. Certaines équipes utilisent alors un rollback, un retour automatique à la version précédente, en quelques secondes. Une autre pratique répandue est le déploiement progressif, ou canary release : la nouvelle version est d'abord montrée à 5 % des utilisateurs, puis étendue si tout va bien. Cette prudence compense la vitesse du CD. Le DevOps ne consiste donc pas seulement à aller vite, mais à aller vite tout en gardant un filet de sécurité solide et une visibilité constante sur l'état réel du système.

  • Le monitoring surveille en continu la santé de l'application en production.
  • Le rollback permet un retour rapide à une version stable en cas de problème.
  • Le déploiement progressif limite l'impact d'un bug à un petit groupe d'utilisateurs.

6.Erreurs fréquentes et points d'examen

L'erreur la plus commune est de confondre DevOps avec un simple outil ou un poste de travail : c'est avant tout une organisation et une culture. Une autre erreur consiste à croire que la CI/CD élimine tout risque, alors qu'elle dépend entièrement de la qualité des tests écrits ; des tests insuffisants laissent passer des bugs malgré l'automatisation. On confond aussi souvent intégration continue et déploiement continu, alors que la première teste le code et la seconde le met en production, deux étapes distinctes. Beaucoup oublient également le rôle du monitoring, pensant que le travail s'arrête au déploiement. À l'examen, sache définir précisément chaque sigle (CI, CD sous ses deux formes), expliquer l'objectif d'un pipeline, citer le rôle de Docker et Kubernetes, et justifier pourquoi les tests automatisés sont la condition de tout le système. Les schémas de pipeline et les questions comparant livraison continue et déploiement continu reviennent très souvent.

  • Ne confonds jamais intégration continue (tester) et déploiement continu (mettre en production).
  • La fiabilité du CI/CD dépend entièrement de la qualité des tests automatisés.
  • Sache distinguer livraison continue (validation manuelle) et déploiement continu (automatique).

À retenir

  • 1Le DevOps est une culture qui réunit développement et exploitation, pas un simple outil.
  • 2La CI teste automatiquement chaque changement de code dès qu'il est envoyé au dépôt commun.
  • 3Le CD automatise la mise à disposition, voire la mise en production, du code validé.
  • 4Un pipeline CI/CD enchaîne compilation, tests, construction et déploiement de façon reproductible.
  • 5Le monitoring et le rollback garantissent qu'aller vite ne signifie pas sacrifier la stabilité.
Vérifier que c'est acquis

Dix questions sur ce sujet démarrent tout de suite, corrigées et expliquées.

Le mémo du sujet

L'essentiel en six phrases, à relire la veille.

Cours rédigé par intelligence artificielle et relu au fil des retours. Pour un examen officiel, garde tes cours et les textes en vigueur comme référence.

DevOps et CI/CD : comprendre la fabrication logicielle moderne : le cours — Jukura