Vous avez cette erreur lors du déploiement des fonctions cloud avec la version du nœud: Node.js 8 (Beta)
Échec de la construction: {"error": {"canonicalCode": "INVALID_ARGUMENT", "errorMessage": "npm_install avait une sortie stderr:\nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez '/workspace/node_modules/.staging/typedarray -83fafd37/.travis.yml '\ nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging/readable-stream-c4f762ab/lib/_stream_transform.js'\nnpm WARN tar ENOENT: pas de tel fichier ou répertoire, ouvrez '/workspace/node_modules/.staging/readable-stream-840f6280/lib/_stream_transform.js'\nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging/readable- stream-c4f762ab/lib/_stream_writable.js '\ nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging/readable-stream-d7e024ba/lib/_stream_transform.js'\nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez '/workspace/node_modules/.staging/readable-stream-840f6280/lib/_stream_writable.js'\nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez'/workspace/node_modul es/.staging/readable-stream-d7e024ba/lib/_stream_writable.js '\ nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging/protobufjs-e78f053b/dist/protobuf.min.js '\ nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging/jimp-a023a0b7/browser/examples/test.html'\nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, lstat '/ workspace/node_modules/.staging/jimp-a023a0b7/browser/lib '\ nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, lstat' /workspace/node_modules/.staging/jimp-a023a0b7/browser/lib'\nnpm WARN tar ENOENT : aucun fichier ou répertoire de ce type, ouvrez '/workspace/node_modules/.staging/ajv-95df8818/dist/ajv.min.js'\nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging /jimp-a023a0b7/browser/README.md'\nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez '/workspace/node_modules/.staging/@firebase/database-9dc4a163/dist/index.d.ts'\nnpm AVERTISSEMENT tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez '/ workspace/node_mod ules/.staging/@firebase/database-9dc4a163/dist/index.esm.js '\ nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging/moment-45f2522a/min/moment- with-locales.min.js '\ nnpm WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez' /workspace/node_modules/.staging/googleapis-329f5f2f/build/src/apis/bigquery/v2.js'\nnpm ERR! code E404\nnpm ERR! 404 Introuvable: [email protected]\n\nnpm ERR! Un journal complet de cette exécution peut être trouvé dans:\nnpm ERR! /builder/home/.npm/_logs/2019-01-10T13_28_58_185Z-debug.log\n\nerror: npm_install a renvoyé le code: 1 "," errorType ":" InternalError "," errorId ":" C5E68EBB "}}" C5E68EBB "}}
MISE À JOUR (25/11/19)
Selon la réponse de @Jennings, la suppression de package-lock.json
ou npm-shrinkwrap.json
est le correctif temporaire rapide. Il semble que le problème soit lié à Node 10: je peux très bien déployer avec Node 8, mais lors de l'utilisation de 10, je dois supprimer le fichier de verrouillage. Of course Node 10 runtime est toujours en Beta, donc ...
Il s'agit d'une erreur très stupide avec la journalisation cryptographique.
Essayez l'une des solutions suivantes:
package-lock.json
et node_modules
et exécutant l'installation de npmPour moi, c'était la première option qui faisait redémarrer les choses. J'ai également réinitialisé Firebase, réinstallé Firebase-Tools et essayé différentes versions de nœuds, bien que je ne pense pas que ces étapes aient fait une différence.
Lors du déploiement de Cloud Functions, j'ai constaté qu'un seul problème de dépendance dans package.json peut provoquer ces gros blocs d'erreur où il semble générer des erreurs pour toutes les dépendances.
Dans mon cas, j'avais une version de dépendance pour "plaid" qui était trop élevée. J'ai dû restaurer "plaid" à 4.0.0 - pour une raison quelconque, je pensais que la version actuelle était supérieure et j'ai essayé d'utiliser 6.0.0, qui n'existe pas. Cela a provoqué une longue liste d'erreurs de tous les modules.
Les erreurs semblaient provenir de tous les modules, j'ai donc pensé que j'avais un problème de version Node.js (que j'avais également récemment mis à jour), ou un problème avec mon chemin d'accès node_modules. Mais quand j'ai commencé à supprimer les dépendances une par une, ce n'était qu'une seule dépendance qui causait toutes les erreurs.
"dependencies": {
"firebase-admin": "^8.6.0",
"firebase-functions": "^3.3.0",
"mysql": "^2.0.0",
"plaid":"^4.0.0"
}
Si vous utilisez des fonctions Cloud, vérifiez si vous avez des erreurs au format JSON que vous avez utilisées dans le fichier package.json.