Qu’est-ce que les actions ?

Effectué

GitHub Actions est une plateforme permettant d’automatiser les flux de travail des développeurs directement dans les référentiels GitHub. Il vous permet de générer, tester et déployer automatiquement votre code lorsque des événements spécifiques se produisent dans votre référentiel.

Concepts de base

Les actions sont des tâches individuelles que vous pouvez combiner pour créer des flux de travail personnalisés. Considérez-les comme des unités réutilisables de code qui exécutent des fonctions spécifiques.

Les flux de travail sont des processus automatisés constitués d’une ou de plusieurs actions. Ils s’exécutent lorsqu’ils sont déclenchés par des événements dans votre référentiel.

Cas d’utilisation courants

GitHub Actions excelle lors de l’automatisation de différentes tâches de développement :

Pipelines CI/CD

  • Intégration continue : générez et testez automatiquement du code sur chaque demande push ou pull.
  • Déploiement continu : Déployer des applications dans des environnements intermédiaires ou de production.
  • Déploiements multi-environnements : déployer sur différents environnements en fonction des règles de branche.

Qualité et sécurité du code

  • Tests automatisés : exécutez des tests unitaires, des tests d’intégration et des tests de bout en bout.
  • Analyse du code : effectuez une analyse statique du code et une analyse de sécurité.
  • Gestion des dépendances : mettez automatiquement à jour les dépendances et recherchez les vulnérabilités.

Automatisation de la gestion des projets

  • Triage des problèmes : étiquetez et affectez automatiquement de nouveaux problèmes.
  • Gestion des pull requests : fusion automatique des mises à jour de dependabot ou nécessite des révisions.
  • Automatisation du déploiement : créez des versions et générez automatiquement des journaux de modifications.

Fonctionnement des actions

Les actions sont définies à l’aide de fichiers YAML stockés dans le .github/workflows répertoire de votre référentiel. Ces flux de travail :

  1. Déclenchement lors d' événements spécifiques (push, pull request, planification, etc.).
  2. Exécutez sur des machines virtuelles appelées « exécuteurs » (hébergés par GitHub ou auto-hébergés).
  3. Exécutez une série d’étapes qui peuvent inclure des actions prédéfinies ou des scripts personnalisés.

Écosystème d’actions

La Place de marché GitHub fournit des milliers d’actions prédéfinies créées par GitHub et la communauté. Les catégories populaires sont les suivantes :

  • Déployer des actions : déployer sur Azure et d’autres plateformes.
  • Actions de test : exécutez des tests avec différents frameworks et outils.
  • Actions de sécurité : recherchez les vulnérabilités et les problèmes de sécurité.
  • Actions de notification : envoyer des messages à Teams ou un e-mail.

Vous pouvez également créer des actions personnalisées à l’aide de conteneurs Docker, De JavaScript ou d’actions composites qui combinent plusieurs étapes.