Anatomie d'un pipeline
Ce qu'un pipeline doit garantir, et dans quel ordre.
Un pipeline n'est pas un script de déploiement. C'est une suite de contrôles dont le rôle est de dire, le plus tôt possible, qu'un commit ne mérite pas d'aller plus loin.
jobs:
verifier:
steps:
- run: npm ci
- run: npm run lint # ~10 s
- run: npm run types:check # ~30 s
- run: npm test # ~3 min
- run: npm run build # ~5 minL'ordre n'est pas décoratif : le contrôle qui échoue le plus souvent et coûte le moins cher passe en premier. Un pipeline qui compile pendant cinq minutes avant de buter sur une virgule manquante gaspille cinq minutes à chaque erreur.
Les trois « continu »
| Terme | Ce qui est automatisé | Où s'arrête l'automatisation |
|---|---|---|
| Intégration continue | build et tests à chaque commit | rien n'est déployé |
| Livraison continue | + un artefact déployable, prêt | un humain déclenche la mise en production |
| Déploiement continu | + la mise en production elle-même | plus aucune main humaine |
Les trois se disent « CD » dans la conversation courante, ce qui entretient une confusion durable. La différence tient à un seul point : reste-t-il un bouton à presser ?
Un pipeline vert n'est une information que si le rouge coûte quelque chose. Dès qu'une équipe prend l'habitude de relancer un job « parce qu'il est instable », le pipeline ne prouve plus rien. Un test intermittent se répare ou se supprime — il ne se relance pas.
Les pièges classiques
Les secrets ne se mettent pas dans le fichier de pipeline, qui est versionné et souvent lisible par toute l'organisation. Ils viennent du magasin de secrets du forge, injectés à l'exécution — et ne sont jamais affichés dans les logs.
Un pipeline déclenché sur une pull request d'un dépôt public peut exécuter du code proposé par un inconnu. Lui donner accès aux secrets de production revient à offrir ces secrets. C'est pour cela que les déclencheurs distinguent les événements issus de forks.
Réponse unique
Dans quel ordre placer `npm test` (3 min), `npm run lint` (10 s) et `npm run build` (5 min) ?
Indice · Qu'est-ce qui coûte le moins cher à faire échouer ?
[ METTRE EN PRATIQUE ]
Ordonner un pipeline pour échouer vite
3 étapes · 25 min · 120 XP
[ CETTE LEÇON DANS LES PARCOURS ]