⚡ Exercices — GitHub Actions CI

10 exercices YAML progressifs. Écrivez votre YAML dans l'éditeur, puis validez. La solution et le téléchargement sont disponibles pour chaque exercice.

EX 01

Configurer les triggers push et pull_request

Écrivez la section on: d'un workflow qui se déclenche sur push et pull_request sur la branche main.

EX 02

Job "test" avec runner, checkout et setup-node

Créez un job nommé test qui tourne sur ubuntu-latest avec les étapes actions/checkout@v4 et actions/setup-node@v4 (Node 20).

EX 03

Steps : npm ci + npm test + npm run lint

Complétez le workflow en ajoutant les 3 étapes shell : npm ci, npm test et npm run lint.

EX 04

Utiliser un secret : ${{ secrets.API_KEY }}

Écrivez un step qui passe le secret API_KEY comme variable d'environnement dans un appel curl. Utilisez la syntaxe ${{ secrets.API_KEY }}.

EX 05

Condition : if: github.ref == 'refs/heads/main'

Ajoutez une condition if: sur un step de déploiement pour qu'il ne s'exécute que sur la branche main.

EX 06

Activer le cache npm

Activez le cache npm via setup-node (propriété cache: 'npm') ou via actions/cache@v4.

EX 07

Upload artifact avec actions/upload-artifact@v4

Après un npm run build, uploadez le dossier dist/ comme artifact nommé build-output.

EX 08

2 jobs avec dépendance needs

Créez 2 jobs : test et build. Le job build doit attendre que test réussisse via needs: test.

EX 09

workflow_dispatch avec input "environment"

Configurez un trigger workflow_dispatch avec un input environment de type choice (staging / production).

EX 10

Workflow complet : lint → test → build + artifact

Écrivez un workflow complet avec 3 jobs en séquence : lint, test, build (avec upload-artifact pour le dist).

→ Mini-projet : Éditeur YAML Actions