Le développement implique souvent des étapes telles que la création et le test de votre code. Rationalisez votre flux de travail et assurez-vous qu'il est fiable en automatisant ces tâches.
La définition de flux de travail pour automatiser les tâches peut considérablement accélérer le développement de votre logiciel. De nombreuses stratégies existent pour rationaliser les flux de travail, le choix dépendant souvent de l'outil et de l'environnement spécifiques utilisés.
GitHub Actions est une solution populaire que vous pouvez utiliser pour automatiser vos workflows de développement. GitHub Actions permet une intégration et une automatisation transparentes des processus de développement de logiciels. À l'aide de GitHub Actions, vous pouvez définir, partager et exécuter automatiquement des workflows personnalisés.
Qu'est-ce que les actions GitHub?
GitHub Actions est une plate-forme flexible et évolutive pour automatiser les tâches et les flux de travail dans les projets logiciels. Il élimine le besoin de systèmes CI/CD externes complexes en fournissant un espace centralisé pour créer, partager et réutiliser les workflows.
Les fonctionnalités essentielles de GitHub Actions incluent l'automatisation des flux de travail, un vaste écosystème d'actions prédéfinies et la collaboration avec les flux de travail existants. GitHub Actions offre une personnalisation via des variables, des secrets et des entrées. Il offre également une compatibilité multiplateforme pour divers langages de programmation et systèmes d'exploitation.
GitHub Actions simplifie l'intégration et le déploiement continus et gère les dépendances. Il assure également les tests et l'assurance qualité et rationalise la livraison et le déploiement continus.
Il offre des cas d'utilisation essentiels tels que l'intégration et les tests continus, la révision et l'analyse automatisées du code, l'automatisation des versions et le provisionnement de l'infrastructure cloud. Ces fonctionnalités améliorent les workflows de développement et favorisent la productivité et la collaboration.
Premiers pas avec les actions GitHub
Avant de plonger dans les subtilités de GitHub Actions, vous devez l'activer pour votre Référentiel GitHub.
Vous pouvez activer les actions GitHub pour votre dépôt en suivant ces étapes :
- Accédez à votre référentiel sur GitHub et cliquez sur l'onglet "Actions" dans le menu du référentiel.
- Si c'est la première fois que vous accédez à GitHub Actions pour le référentiel, vous serez invité à configurer un flux de travail. Choisissez un modèle de flux de travail approprié ou créez-en un nouveau à partir de zéro.
- La configuration du flux de travail activera les actions GitHub pour le référentiel.
Comprendre les actions GitHub: mots clés et concepts
GitHub Actions s'articule autour de plusieurs concepts fondamentaux. Ces concepts constituent les éléments constitutifs de ses capacités d'automatisation. Vous devrez comprendre les mots-clés suivants pour tirer le meilleur parti des actions GitHub.
Flux de travail
Les flux de travail sont un concept crucial; ils vous permettent de définir des processus automatisés personnalisés. Ces processus automatisés s'exécutent chaque fois que des événements spécifiques se produisent dans votre référentiel.
Vous allez définir des flux de travail avec des fichiers YAML et spécifier les tâches qui les composent.
Emplois
Un workflow contient un ou plusieurs travaux. Chaque travail représente une unité de travail qui peut s'exécuter simultanément ou séquentiellement avec d'autres travaux dans un workflow. Vous définirez des travaux avec un fichier YAML et vous les définirez généralement comme une série d'étapes.
Pas
Les étapes sont les tâches ou actions individuelles qui composent un travail. Ils représentent la plus petite unité de travail au sein d'un workflow. Les étapes peuvent effectuer un large éventail d'actions telles que l'exécution de commandes, l'appel d'API externes ou le déploiement de code.
Actions
Les actions sont des unités de code réutilisables qui encapsulent des fonctionnalités spécifiques. Vous pouvez utiliser des actions sur plusieurs workflows.
Les actions incluent la création de code, le déploiement d'applications, l'envoi de notifications ou l'interaction avec des services externes. Trois types d'actions sont disponibles :
- Actions prédéfinies: les actions créées par GitHub ou la communauté sont disponibles sur le marché des actions GitHub. Vous pouvez les utiliser dans vos workflows en spécifiant le nom et la version de l'action dans le champ uses (par ex. utilise: actions/checkout@v2).
- Actions du conteneur Docker: vous pouvez définir des actions à l'aide de conteneurs Docker. Cela vous permet d'encapsuler un ensemble de commandes ou de scripts dans une image de conteneur et de l'utiliser comme une action. Vous pouvez spécifier l'image Docker dans le champ uses, tout comme une action prédéfinie (par exemple, utilise: docker://node: 14).
- Étapes d'exécution composites: les étapes d'exécution composites vous permettent de définir des actions personnalisées directement dans votre fichier de workflow. Ces étapes peuvent inclure une séquence de commandes shell ou faire référence à des scripts externes. Ils aident à créer de petites actions réutilisables spécifiques à votre flux de travail.
Les actions sont les éléments constitutifs des actions GitHub car elles vous permettent d'étendre et de personnaliser vos workflows d'automatisation.
Événements
Les événements déclenchent le démarrage des workflows. Les événements peuvent être des actions spécifiques, telles que des envois de référentiel, la création de demandes d'extraction ou des actions planifiées. GitHub fournit un large éventail d'événements que vous pouvez exploiter pour déclencher vos workflows en fonction des conditions souhaitées.
Coureurs
Les exécuteurs sont des machines virtuelles ou des conteneurs qui exécutent des tâches dans un workflow. GitHub fournit des exécuteurs hébergés qui prennent en charge une variété de systèmes d'exploitation et d'environnements. Vous pouvez également configurer des runners auto-hébergés pour répondre à des exigences spécifiques.
Création de flux de travail avec des actions GitHub
Vous allez définir des workflows dans un fichier YAML (Yet Another Markup Language) avec la syntaxe YAML. YAML fournit un moyen lisible et facilement compréhensible de définir des configurations et des flux de travail.
Créer un .github/flux de travail répertoire de votre référentiel pour héberger les fichiers YAML qui représentent votre flux de travail.
Voici le contenu d'un simple fichier YAML de flux de travail :
nom:AllerFlux de travail
sur:
pousser:
branches:
-principalpull_request :
branches:
-principalemplois:
construire:
fonctionne sur:ubuntu-dernierpas:
-nom:Vérifiercode
les usages:actions/paiement@v2-nom:Ensembleen hautAller
les usages:actions/setup-go@v2
avec:
go-version :'1.16'-nom:Construireprojet
courir:allerconstruire./...
-nom:Couriressais
courir:allertest./...
Ce programme YAML définit un workflow nommé "Go Workflow" pour un projet Go.
Le workflow définit deux événements qui le déclenchent: pousser et pull_request sur le principal bifurquer. Cela signifie qu'il s'exécutera chaque fois qu'il y aura une demande push ou pull vers la branche principale.
Le construire le travail s'exécute sur un ubuntu-dernier runner, une machine virtuelle hébergée sur GitHub que vous pouvez spécifier pour exécuter la tâche.
Le pas Le composant contient une liste d'actions à exécuter dans l'ordre. Dans ce cas, le travail extrait d'abord le code à l'aide de la action/paiement action, puis construit le projet en exécutant allez construire ./... et les tests en exécutant le allez tester ./... commande.
Une fois que vous avez défini votre fichier de workflow, vous pouvez le valider et le pousser vers votre référentiel. GitHub Actions détecte et exécute le nouveau flux de travail chaque fois que les événements spécifiés se produisent.
Vous pouvez vérifier votre référentiel Actions pour plus d'informations sur vos actions et flux de travail GitHub.
Déployer des applications React sur Firebase avec des actions GitHub
Vous pouvez faire beaucoup de choses avec GitHub Actions. Par exemple, il est incroyablement utile pour déployer automatiquement les applications React sur Firebase.
Vous pouvez configurer un pipeline CI/CD qui crée, teste et déploie votre application React sur Firebase chaque fois que vous transmettez des modifications à votre référentiel. L'intégration de GitHub Actions et de Firebase peut vous aider à réaliser des déploiements efficaces et fiables.