Retour au blog
    Pipelines CI/CD modernes : GitLab, GitHub Actions, Jenkins
    CI/CDDevOpsGitLab CIGitHub ActionsJenkinsDevSecOps

    Pipelines CI/CD modernes : GitLab, GitHub Actions, Jenkins

    1 juillet 202610 min de lecture

    Le CI/CD, cœur battant du DevOps

    Intégration continue (CI) et livraison continue (CD) transforment un commit Git en application déployée automatiquement, testée et sécurisée. C'est la pratique la plus impactante du DevOps. Cet article s'inscrit dans notre série — voir Guide complet : devenir ingénieur DevOps pour la vision d'ensemble.

    1. Anatomie d'un pipeline moderne

    Un pipeline typique en 2026 enchaîne :

      • Lint & format — ESLint, Prettier, ruff, gofmt
      • Tests unitaires — couverture > 70 %
      • Build — image Docker multi-stage, artefacts versionnés
      • Scan sécurité — SAST (Semgrep), SCA (Snyk, Trivy), secrets (gitleaks)
      • Tests d'intégration — bases éphémères, services mockés
      • Push registry — image signée (Sigstore/cosign)
      • Deploy staging — automatique
      • Tests E2E — Playwright, Cypress
      • Deploy production — validation manuelle ou automatique selon la stratégie

    2. Comparatif des outils

    CritèreGitLab CIGitHub ActionsJenkins
    HébergementSaaS ou self-hostedSaaS (GitHub)Self-hosted
    SyntaxeYAML `.gitlab-ci.yml`YAML workflowsGroovy (Jenkinsfile)
    RunnersShared + customGitHub-hosted + self-hostedAgents Java
    ÉcosystèmeIntégré (registry, K8s, sécurité)Marketplace Actions énormePlugins (2000+)
    Idéal pourÉquipes avec GitLabProjets open-source & GitHubInfra legacy, contraintes on-prem

    3. Stratégies de déploiement

    • Rolling update — mise à jour progressive des pods (Kubernetes par défaut)
    • Blue/Green — deux environnements, bascule instantanée
    • Canary — 5 % du trafic vers la nouvelle version, augmentation progressive
    • Feature flags — déployer sans exposer, activer par utilisateur (LaunchDarkly, Unleash)

    4. DevSecOps : sécuriser la chaîne

    • Signatures d'images — Sigstore/cosign, attestations SLSA
    • Scan de dépendances — Renovate ou Dependabot pour l'auto-upgrade
    • Politiques as code — OPA/Conftest pour valider les manifests Kubernetes
    • Secrets — jamais dans le repo ; utiliser Vault, GitHub OIDC ou GitLab JWT

    5. Métriques DORA à suivre

    Les 4 métriques DORA sont le baromètre standard :

    • Deployment frequency — combien de fois par jour ?
    • Lead time for changes — délai commit → prod
    • Change failure rate — % de déploiements qui échouent
    • Mean time to recovery (MTTR) — temps de récupération après incident
    Les élites atteignent : multiples déploiements/jour, lead time < 1h, échec < 5 %, MTTR < 1h.

    Pièges à éviter

    • Tests longs et flaky → les équipes finissent par ignorer les échecs
    • Pipeline monolithique → 45 min pour un typo, dérive du "shift left"
    • Absence de rollback automatique → un déploiement raté = incident majeur
    • Secrets stockés en clair → fuite à la première compromission

    FAQ CI/CD

    GitLab CI ou GitHub Actions en 2026 ?

    Si votre code vit sur GitHub, GitHub Actions gagne par simplicité et écosystème. Sur GitLab, préférer GitLab CI natif — intégration DevSecOps supérieure, tout est dans une seule interface.

    Jenkins est-il encore pertinent ?

    Oui, mais principalement pour l'existant on-prem ou les contraintes de conformité fortes. Pour un nouveau projet cloud, GitLab CI ou GitHub Actions sont plus rapides à mettre en place.

    Comment débuter un pipeline CI/CD ?

    Commencer minimaliste : lint + tests + build. Ajouter progressivement scan sécurité, déploiement staging, puis production. L'itération vaut mieux qu'un pipeline "parfait" jamais mergé.

    Aller plus loin