Skip to content

Fix CI/CD : Correction de l'erreur wrangler not found dans GitHub Actions

Fix CI/CD : Correction de l'erreur wrangler not found dans GitHub Actions

Documentation de la résolution de l'erreur Command wrangler not found lors du déploiement dans GitHub Actions.

Correction de l’erreur CI/CD : Command wrangler not found

1. Description du Problème

Lors de l’exécution des workflows GitHub Actions après l’ajout de Better Auth, tous les jobs de déploiement échouaient avec l’erreur suivante :

Terminal window
Error: ERR_PNPM_RECURSIVE_EXEC_FIRST_FAIL
× Command "wrangler" not found
Error: Process completed with exit code 1.

2. Analyse de la Cause Racine1/3

  1. Comportement de pnpm exec dans CI :

    • pnpm exec wrangler ne fonctionne pas correctement dans l’environnement GitHub Actions
    • Même avec wrangler installé à la racine du monorepo, pnpm exec ne peut pas localiser le binaire
    • Ce problème est spécifique aux environnements CI/CD non-interactifs

2. Analyse de la Cause Racine2/3

  1. Pourquoi npx wrangler fonctionnait avant :

    • npx télécharge et exécute wrangler directement sans dépendre de node_modules locaux
    • npx est conçu pour fonctionner de manière fiable dans les environnements CI
    • La documentation Cloudflare recommande explicitement npx wrangler pour les CI/CD

2. Analyse de la Cause Racine3/3

  1. Historique de succès :

    • Avant l’ajout de Better Auth, les workflows utilisaient npx wrangler et fonctionnaient correctement
    • Le changement vers pnpm exec wrangler a introduit ce problème

3. Solution Appliquée

Revenir à npx wrangler qui est la méthode recommandée par Cloudflare pour les environnements CI/CD.

  1. Utilisation de npx wrangler : Mise à jour des workflows GitHub Actions (deploy-dev.yml, deploy-prod.yml, redeploy-secrets.yml) pour utiliser npx wrangler secret put et npx wrangler deploy, garantissant l’exécution fiable dans les environnements CI/CD.

  2. Conservation du flag --cwd : Le flag --cwd est conservé pour spécifier le répertoire de travail pour chaque service/application.

Note : Voir 29-fix-workflows-npx-wrangler.md pour les détails complets de la résolution et l’historique des tentatives.

Switch to normal mode

Contents