Aller au contenu
CI/CD & Automatisation high

GitHub Actions : Formation complète CI/CD

10 min de lecture

GitHub Actions est la plateforme d’automatisation CI/CD (Continuous Integration / Continuous Delivery) intégrée nativement à GitHub. Lancée en 2019, elle permet d’exécuter automatiquement du code en réponse à des événements sur votre repository.

Concrètement, GitHub Actions vous permet de :

  • Automatiser les tests — À chaque push ou pull request, vos tests s’exécutent automatiquement
  • Construire et publier — Compilez votre code, créez des images Docker, publiez sur npm ou PyPI
  • Déployer — Déployez automatiquement sur AWS, Azure, GCP, Kubernetes, ou votre propre infrastructure
  • Maintenir votre code — Vérifiez le formatage, analysez la sécurité, mettez à jour les dépendances
  • Orchestrer des tâches — Planifiez des actions récurrentes, réagissez aux issues ou aux releases

Tout repose sur des workflows : des fichiers YAML placés dans le dossier .github/workflows/ de votre repository. Chaque workflow définit :

  1. Quand s’exécuter (push, pull request, schedule, manuellement…)
  2. Quoi faire (une série de tâches appelées jobs et steps)
  3. le faire (sur des machines virtuelles appelées runners)
# Exemple minimal d'un workflow
name: Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- run: npm test

Quand vous poussez du code, GitHub détecte automatiquement les workflows, provisionne une machine virtuelle, exécute vos tâches, et vous affiche les résultats dans l’interface.

Une des forces de GitHub Actions est son Marketplace : des milliers d’actions prêtes à l’emploi créées par la communauté et les éditeurs. Plutôt que de réécrire la logique pour “déployer sur AWS” ou “envoyer une notification Slack”, vous utilisez une action existante.

Mais attention : utiliser une action, c’est exécuter du code tiers avec accès à vos secrets. La sécurité de votre pipeline dépend de la confiance que vous accordez à ces actions. C’est pourquoi la formation insiste sur l’épinglage SHA et la vérification des sources.

GitHub Actions propose un modèle gratuit avec quotas qui convient à la majorité des projets :

Type de repositoryQuota mensuel gratuitAu-delà
PublicIllimité
Privé (compte gratuit)2 000 minutesFacturation à la minute
Privé (Team)3 000 minutesFacturation à la minute
Privé (Enterprise)50 000 minutesFacturation à la minute

Les minutes sont comptées différemment selon le type de runner :

RunnerMultiplicateurExemple : 10 min réelles
Linux (ubuntu-*)×110 minutes facturées
Windows×220 minutes facturées
macOS×10100 minutes facturées

Allez dans Settings → Billing and plans → Plans and usage pour voir votre consommation actuelle. Vous pouvez aussi configurer des alertes pour éviter les surprises.

Pour les projets open source, tout est gratuit et illimité. C’est une des raisons pour lesquelles GitHub Actions est devenu le standard de facto pour la CI/CD des projets open source.

Vous avez un projet GitHub. À chaque modification, vous lancez les tests à la main, vous déployez en copiant des fichiers, vous vérifiez manuellement que rien n’est cassé. Ce temps perdu s’accumule, et les erreurs humaines finissent par passer.

GitHub Actions résout ce problème. Mais GitHub Actions ne se résume pas à “lancer les tests automatiquement”. C’est un outil puissant qui, mal maîtrisé, peut devenir une source de dette technique, de failles de sécurité, et de workflows impossibles à maintenir.

Cette formation vous amène du premier workflow à une CI/CD sécurisée de niveau professionnel. Pas de raccourcis, pas de copier-coller aveugle : vous comprendrez chaque concept pour prendre les bonnes décisions.

Pour suivre cette formation, vous devez avoir un compte GitHub (gratuit), connaître les bases de Git (clone, commit, push, branches, pull requests), et être à l’aise avec la ligne de commande.

Aucune expérience préalable en CI/CD n’est requise. Nous partons de zéro et nous construisons progressivement.

Au terme de cette formation, vous serez capable de :

Construire des workflows — Vous maîtriserez la syntaxe YAML, les événements déclencheurs, les conditions d’exécution, et les stratégies de parallélisation. Vos workflows seront lisibles, maintenables et adaptés à vos besoins réels.

Sécuriser vos pipelines — C’est le cœur de la formation. Vous apprendrez à configurer les permissions minimales, épingler les actions par SHA, utiliser OIDC pour éviter les secrets statiques, et comprendre les risques des PRs de forks. Vous saurez auditer un workflow existant et identifier les failles.

Optimiser les performances — Vous saurez utiliser le cache intelligemment, partager des artefacts entre jobs, et réduire le temps d’exécution de vos pipelines de plusieurs minutes. Chaque seconde compte quand vous attendez le feedback de vos tests.

Gérer les runners — Vous comprendrez la différence entre runners GitHub-hosted et self-hosted, quand utiliser chaque option, et comment sécuriser votre infrastructure d’exécution. Vous saurez mettre en place des runners éphémères pour les environnements sensibles.

La formation suit une progression logique. Chaque module s’appuie sur les précédents pour construire vos compétences pas à pas.

Module 1 · Fondations

C’est quoi un workflow ? Où le mettre ? Comment ça marche ?

Vous découvrirez la structure des fichiers YAML, les événements déclencheurs, la gestion des secrets, et les premiers réflexes de sécurité.

Commencer par les bases →

Module 2 · Workflows avancés

Matrix, workflows réutilisables, actions composites

Testez sur plusieurs OS en parallèle, factorisez votre code, et créez des patterns réutilisables dans toute votre organisation.

Approfondir les workflows →

Module 3 · Sécurité

Le module le plus important de la formation

Permissions minimales, épinglage SHA, OIDC, risques des forks, framework SLSA. Transformez vos workflows amateurs en pipelines professionnels.

Sécuriser vos pipelines →

Module 4 · Optimisation

Divisez par 5 le temps de vos pipelines

Cache intelligent, artefacts, concurrency, debug local avec act. Chaque seconde compte quand toute l’équipe attend le feedback CI.

Optimiser les performances →

Module 5 · Runners

Maîtrisez votre infrastructure d’exécution

Runners hosted vs self-hosted, runners éphémères, scaling avec ARC sur Kubernetes. Pour les cas d’usage avancés.

Gérer les runners →

GitHub Actions est bien plus qu’un outil pour “lancer des tests automatiquement”. C’est une plateforme puissante qui, bien maîtrisée, transforme votre façon de livrer du logiciel.

Cette formation vous donne les clés pour :

  • Gagner du temps — Automatisez les tâches répétitives et concentrez-vous sur ce qui compte : écrire du bon code
  • Réduire les erreurs — Les machines ne font pas d’erreurs d’inattention, et vos déploiements deviennent prévisibles
  • Sécuriser votre supply chain — Dans un monde où les attaques sur les pipelines CI/CD explosent, vous saurez vous protéger
  • Travailler en équipe — Des workflows lisibles, maintenables, et que tout le monde peut comprendre et faire évoluer

La documentation officielle GitHub et le Marketplace sont vos ressources complémentaires. Mais rien ne remplace la pratique : expérimentez, cassez des choses, comprenez pourquoi ça casse. C’est comme ça qu’on apprend vraiment.