Développement & Déploiement

CI/CD : automatiser le déploiement de son application

Pipelines, secrets, environnements et déploiements idempotents.

O
Online Toolset TeamEditorial Team
6 min de lecture
CI/CD : automatiser le déploiement
De l commit au déploiement: tests, build, sécurité, approbations et rollback.

À retenir (TL;DR) Pipeline: Install → Lint → Tests → Build → Scan → Deploy (staging → prod avec approbation). Secrets dans le secret store (GitHub/GitLab), jamais dans Git. Utilisez OIDC + vault/cloud secret manager. Idempotence et rollback: déploiements par artefacts versionnés ou images Docker immuables. Observabilité: métriques, logs et alertes (SLI/SLO). Gate quality sur tests et couverture.

La CI/CD automatise les tests, builds et déploiements afin de livrer plus vite, plus souvent et plus sûrement. Cette fiche propose un modèle de pipeline, des bonnes pratiques et des exemples concrets avecGitHub ActionsetGitLab CI.

Plateformes & outils clés

  • GitHub Actions— workflows YAML, OIDC vers cloud:github.com/features/actions
  • GitLab CI— .gitlab-ci.yml, environments & approvals:docs.gitlab.com/ee/ci
  • Jenkins— pipelines déclaratifs:jenkins.io/doc
  • Docker& registres (GHCR, GitLab Registry, ECR, GCR) pour des artefacts reproductibles.
  • Kubernetes+Argo CD/Flux(GitOps) pour des déploiements déclaratifs.
  • Analyse qualité/sécurité:ESLint,Jest/PHPUnit,SonarQube,Trivy(images),Dependabot/Renovate.

Pipeline de référence

  1. Install dépendances +cache(npm/pnpm/composer).
  2. Qualité:lint,format,tests unitairesetcoverage.
  3. Sécurité:SCA(audit deps),SAST(code),Scan imagesi Docker.
  4. Build: artefact (zip) ouimage Dockertaguée (app:1.2.3+sha).
  5. Déploiementstaging(automatique) →tests e2e/smoke.
  6. Gate d’approbation → déploiementproduction(manuel) +vérification post-déploiement.

Exemple GitHub Actions (Node)

Exemple GitLab CI (Docker + Kubernetes)

Environnements, secrets et sécurité

  • Utiliser desenvironnements(staging, preprod, prod) avecURLetrègles d’accès.
  • Secrets: OIDC +cloud roles(AWS/GCP/Azure) plutôt que des clés longues durées.
  • Chiffrez etrotatezles secrets; journalisez les accès.
  • Activezapprobations,code owners,branch protectionet scans de sécurité.

Stratégies de déploiement

  • Blue/Green: 2 environnements, bascule du trafic après validation.
  • Canary: exposition progressive du trafic (1% → 100%).
  • Rolling: remplacement graduel des pods/instances.
  • Feature flagspour découpler activation et déploiement.

Outils cités GitHub Actions, GitLab CI, Jenkins, Docker, Kubernetes, Argo CD/Flux, SonarQube, Trivy, Dependabot/Renovate.

CI/CDGitHub ActionsGitLab CI

À propos de l'auteur

O
Online Toolset TeamEditorial Team

The Online Toolset editorial team produces practical guides on web development, image optimization, productivity, and digital tools.

Web DevelopmentImage OptimizationDevOpsUI/UXProductivity