Aller au contenu
Perrine HonoréPerrine Honoré · Blog
MéthodePar Perrine Honoré · · 7 min de lecture

GitHub Actions pour un SaaS : le CI/CD qui tient à l'échelle

GitHub Actions bien configuré : jobs parallèles, cache, matrix, secrets. La stack CI/CD qui tient jusqu'à 20 devs sans crawler.

En bref

Bien configuré, GitHub Actions tourne en 3 à 5 minutes sur un projet de taille moyenne ; mal configuré, en 20. Les deux leviers sont la parallélisation des jobs et le cache : un pipeline séquentiel de 12 minutes tombe à 3 une fois découpé. Un CI de 3 minutes encourage les petites pull requests, c'est un levier culturel autant que technique.

GitHub Actions est le CI/CD par défaut pour la plupart des SaaS en 2024. Bien configuré, il tourne en 3-5 min sur des projets de taille moyenne. Mal configuré, en 20 min.

Levier majeur : parallélisation + cache. Le job qui prend 12 min en séquentiel tombe à 3 min bien découpé.

Découper en jobs parallèles

  • Lint (30 s)
  • Type-check (1-2 min)
  • Test unitaire (1-3 min)
  • Test E2E (3-5 min)
  • Build (2-3 min)

Tous en parallèle. Le job le plus long dicte le temps total.

Cache

  • actions/cache pour node_modules
  • Cache Next.js .next/cache
  • Cache TypeScript build info

Matrix strategy

Utile pour tester sur plusieurs versions de Node ou plusieurs OS. Attention au coût, chaque combinaison multiplie le temps CI.

Secrets

  • Environment secrets pour prod (require approval)
  • Repository secrets pour test / CI
  • Jamais dans les logs (::add-mask::)

Déclencher intelligemment

Filtrer on.push.paths : pas de CI pour un README modifié. Économise 30-50 % des runs sur un projet actif.

Un CI qui prend 10 min tue le flow. Un CI de 3 min encourage les petites PR. C'est un levier culturel autant que technique.

On cadre votre CI ?

En 30 minutes on peut auditer votre workflow. Réservez un créneau. À lire : Déploiement continu Vercel.

Une question avant l'appel ?

Je réponds personnellement sous 24 h ouvrées.

Le bouton ouvre votre messagerie avec le message prêt. Si rien ne s'ouvre, écrivez directement à perrine.honore@gmail.com.