Aller au contenu principal
+33 1 83 81 22 72
Retour au blog
Cloud & DevOps2 min de lecture

DevOps en pratique : ce qu'on a appris en mission

M
MehdiAGATE IT
16 janvier 2023

De Jenkins a GitLab CI : retour de migration

Mission de 6 mois chez un editeur SaaS, equipe de 40 devs. Le CI/CD tournait sur un Jenkins vieillissant : 12 minutes de build moyen, des pipelines fragiles, et un seul ops qui savait les maintenir. On a migre vers GitLab CI avec de l'IaC Terraform. Voici ce qu'on a appris.

Le pipeline en pratique

Architecture cible : monorepo avec 3 services (API Node.js, front React, worker Python). Pipeline GitLab CI en 4 stages :

  • Build : Docker multi-stage, cache des layers (~2 min)
  • Test : parallelisation sur 4 runners, coverage gate a 80%
  • Security : Trivy pour les images, Semgrep pour le code
  • Deploy : ArgoCD vers Kubernetes, rollback automatique si health check KO

Temps de build moyen : passe de 12 a 4 minutes. Frequence de deploiement : de 2/semaine a 3/jour.

IaC et metriques DORA

Toute l'infra AWS (EKS, RDS, ElastiCache) geree en Terraform avec des modules maison. State remote sur S3 + DynamoDB pour le locking. Dashboard Grafana branche sur les 4 metriques DORA :

  • Lead time : 12h a 2h
  • Frequence de deploiement : x6
  • Taux d'echec : 15% a 4%
  • Temps de restauration : 45 min a 8 min
Le DevOps, ce n'est pas un poste. C'est une culture. Le plus dur n'a pas ete de configurer GitLab CI — c'a ete de convaincre 40 devs d'ecrire des tests avant de push.
DevOpsCI/CDautomatisationculture DevOpsretour d'expérience
M

Mehdi

Consultant chez AGATE IT

Expert en cloud & devops, notre consultant partage ses retours d’expérience et ses bonnes pratiques pour vous aider dans vos projets.