GitHub workflows : comment utiliser la fonction Github pratique ?

Les flux de travail GitHub (ou « GitHub workflows ») étendent les fonctionnalités de GitHub et sont créés directement dans le référentiel souhaité dans le dossier .github/workflows. Ils vous permettent d’exécuter des actions automatisées lorsque certains événements se produisent.

Que sont les Github workflows ?

En principe, un flux de travail GitHub n’est rien d’autre qu’un ensemble d’actions spécifiques les plus récurrentes, qui sont automatiquement exécutées lorsqu’un événement précis se produit dans le référentiel. Il se compose de plusieurs tâches appelées « jobs », qui sont à leur tour divisés en étapes individuelles ou « steps ». En plus de l’utilisation des flux de travail déclenchée par des événements, ceux-ci peuvent également être démarrés en mode manuel ou exécutés au sein d’intervalles de temps définis. Les flux de travail font partie intégrante de la plateforme d’intégration continue GitHub Actions. Les programmeurs désignent les actions individuelles réunies au sein du GitHub workflow. Les champs d’application les plus courants sont le test automatisé du code dès qu’il est mis à jour dans le référentiel, ou la notification des membres de l’équipe lorsque des modifications se produisent dans le référentiel.

Conseil

Si vous utilisez GitHub pour votre projet Web, il peut s’avérer utile de se tourner vers Deploy Now pour renforcer votre productivité. Le flux de travail GitHub Actions déjà configuré met automatiquement en place votre projet.

GitHub workflow : construire son propre flux de travail pas à pas

Il n’est pas difficile de créer un flux de travail GitHub. Il vous suffit de disposer de connaissances de base du langage de programmation YAML et d’un référentiel GitHub dans lequel vous souhaitez exécuter et déployer votre flux de travail. Si vous utilisez un environnement de développement intégré pour écrire votre code YAML, l’assistant GitHub Copilot peut même vous aider à créer le code de flux de travail.

Étape 1 : définir un flux de travail

Après avoir créé un référentiel ou sélectionné un référentiel existant pour votre flux de travail GitHub, cliquez sur le bouton Actions pour accéder au menu Actions de GitHub.

Vue d’un référentiel GitHub
Sélectionnez l’onglet Actions dans votre référentiel pour accéder au menu Actions de GitHub.

Vous pouvez maintenant créer votre propre flux de travail dans le menu Actions de GitHub. Pour ce faire, cliquez sur le bouton « set up a workflow yourself ».

Vue du menu Actions dans GitHub
Dans le menu Actions GitHub, vous pouvez créer votre propre flux de travail GitHub.

Étape 2 : écrire du code pour le flux de travail GitHub

Une fois que vous avez créé un nouveau flux de travail, un nouveau fichier nommé main.ymls’ouvre automatiquementdans le répertoiregithub/workflows. Vous pouvez modifier ce fichier directement dans GitHub et ajouter le code que vous souhaitez exécuter dans votre flux de travail. Comme l’indique l’extension de fichier, ce code doit être écrit dans le langage de programmation YAML.

Le fichier main.yml dans l’éditeur GitHub
Vous pouvez éditer le fichier main.yml directement dans GitHub, puis faire un commit.

Seul vous décidez des actions que vous spécifiez dans votre code. Notre exemple de code crée un flux de travail appelé « example » et s’exécute chaque fois qu’un commit est effectué dans la branche « main » :

name: example
on:
	push:
		branches: [main]
jobs:
	build:
		runs-on: ubuntu-latest
		steps:
-  uses: actions/checkout@v2
    with:
	fetch-depth: 0
- run: make

Tout d’abord, il spécifie le moment précis où le flux de travail Github doit être exécuté. Les mots-clés « on » et « push » sont utilisés à cette fin. Ceux-ci déclenchent le flux de travail si le code est spécifié après le mot-clé « branches ».

Le flux de travail lui-même se compose d’un job appelé « build », qui, à son tour, se déroule en deux étapes distinctes et s’exécute sur un hôte Ubuntu.

Dans la première étape, nous utilisons uneaction GitHub prédéfinie appelée « checkout ». Elle veille à ce que l’ensemble du code du référentiel soit téléchargé sur l’hôte. Le paramètre « fetch-depth » peut être utilisé pour spécifier le nombre de commits à télécharger. L’indication « 0 » garantit que l’historique des validations complet de la branche « main » est téléchargé.

La deuxième étape exécute la commande « make » sur l’hôte. Elle compile et gère le code en exécutant des commandes qui sont généralement spécifiées dans un « Makefile ».

Étape 3 : enregistrer et valider le flux de travail Github

Une fois que vous avez spécifié le code dans votre flux de travail, il vous suffit d’enregistrer le fichier puis de faire un commit. À partir de maintenant, votre flux de travail s’exécutera chaque fois que l’événement spécifié se produit.