Validateur de workflow GitHub Actions

Collez un workflow issu de .github/workflows et repérez les problèmes avant la CI : déclencheurs invalides, runs-on manquant, needs incorrect, expressions erronées, actions obsolètes et risques d’injection de script.

Mis à jour le
Rapport

Vos données ne quittent jamais votre ordinateur. Tout le traitement se fait localement dans votre navigateur.

Comment utiliser : Validateur GitHub Actions

  1. Collez un fichier de workflow, ouvrez-le ou chargez l’exemple.
  2. Les erreurs de YAML s’affichent en premier, avec les numéros de ligne.
  3. Les déclencheurs, les jobs, les steps, les needs, les expressions, les planifications cron et les permissions sont ensuite vérifiés.
  4. Les contrôles de bonnes pratiques signalent les versions d’actions obsolètes, les actions tierces non épinglées, les timeouts manquants et les risques d’injection de script.

Erreurs courantes dans les workflows détectées par l’outil

  • Événements ou clés inconnus — fautes de frappe comme pull-request au lieu de pull_request, ou run-on au lieu de runs-on.
  • Graphes de jobs cassés — needs pointant vers un job inexistant, ou jobs qui dépendent les uns des autres en cycle.
  • Steps avec à la fois uses et run, ou aucun des deux, et références uses sans version (@v4).
  • Expressions — ${{ }} non équilibrées, contextes inconnus et références à des sorties de steps inexistantes.
  • Cron invalide — une planification doit comporter cinq champs ; l’outil indique quand elle s’exécute (en UTC).
  • Commandes obsolètes comme ::set-output et ::save-state, remplacées par $GITHUB_OUTPUT et $GITHUB_STATE.

Contrôles de sécurité

Utiliser directement ${{ github.event.pull_request.title }}, le corps d’une issue ou le nom d’une branche dans run: permet à n’importe qui ouvrant une pull request d’injecter des commandes shell. Passez plutôt ces valeurs par une variable d’environnement. Le validateur signale aussi pull_request_target combiné à un checkout du code de la PR, l’absence de permissions (le token reçoit alors des droits étendus par défaut) et les actions tierces épinglées sur un tag modifiable plutôt que sur un SHA de commit.

Créez un nouveau workflow avec le générateur GitHub Actions, expliquez vos planifications avec le générateur d’expressions cron et vérifiez d’autres fichiers YAML avec le validateur YAML.

Aussi recherché comme : linter github actions, valider workflow github, actionlint en ligne, vérifier yaml github workflow, syntaxe github actions.

Outils complémentaires : Validateur GitHub Actions

  • Validateur YAML Kubernetes — Collez des Deployments, Services, Ingresses, ConfigMaps ou un fichier complet contenant plusieurs documents.
  • Aide-mémoire Git — Toutes les commandes Git que vous utilisez au quotidien, et celles dont vous avez besoin quand ça tourne mal, expliquées en une ligne.
  • Générateur YAML Kubernetes — Renseignez le nom, l’image et le port de votre application pour obtenir du YAML Kubernetes prêt pour la production : un Deployment avec sondes, limites de ressources et contexte de sécurité renforcé, ainsi que le Service, l’Ingress avec TLS, le ConfigMap, le Secret et le HorizontalPodAutoscaler que vous cochez, le tout dans un seul fichier prêt pour kubectl apply.
  • Générateur de service systemd — Faites tourner votre application comme un véritable service Linux qui démarre au boot et redémarre après un plantage.

Questions fréquentes

Est-ce équivalent à actionlint ?
L’outil couvre bon nombre des mêmes contrôles — syntaxe, graphe des jobs, expressions, cron, commandes obsolètes et risques d’injection — et fonctionne dans votre navigateur sans rien installer. Pour imposer les règles en CI, exécutez aussi actionlint dans votre pipeline.
Valide-t-il les workflows réutilisables et les actions composites ?
Les workflows avec on: workflow_call et les jobs qui appellent des workflows réutilisables (uses: au niveau du job) sont pris en charge. Les fichiers action.yml des actions composites ne sont pas encore vérifiés.
Pourquoi épingler les actions sur un SHA de commit ?
Un tag comme @v4 peut être déplacé par le propriétaire de l’action, ou par un attaquant qui en aurait compromis le dépôt. Un SHA de commit complet ne peut pas changer : votre workflow exécute donc exactement le code que vous avez relu.
Puis-je installer Validateur GitHub Actions en tant qu’application web et l’utiliser hors ligne ?
Oui. Validateur GitHub Actions est une application web installable (PWA) : elle s’installe depuis votre navigateur, sans passer par une boutique d’applications. Cliquez sur « Installer l’application » en haut de cette page dans Chrome ou Edge (Windows, macOS, Linux, ChromeOS) ; sur Android, utilisez « Partager » → « Ajouter à l’écran d’accueil » sur iPhone et iPad ; ou « Fichier » → « Ajouter au Dock » dans Safari 17+ sur Mac. L’application s’ouvre alors dans sa propre fenêtre avec sa propre icône, et comme elle s’exécute entièrement dans votre navigateur, elle continue de fonctionner hors ligne. Firefox sur ordinateur de bureau ne permet pas d’installer d’applications web. Comment fonctionne l’installation.

Outils similaires