6
votes

{"error": {"canonicalCode": "INVALID_ARGUMENT", google cloud

Vous avez cette erreur lors du déploiement des fonctions cloud avec la version de 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 : aucun fichier ou répertoire de ce type, 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_mo dules / .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 WARN tar ENOENT: aucun fichier ou répertoire de ce type, ouvrez '/ workspace / node_ modules/.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: har-validator@5.1.2 \ 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 "}}


1 commentaires

Je reçois la même erreur. avez-vous compris cela? J'ai supprimé le fichier package-lock.json. mais obtenir une erreur avec mes modules locaux. utilisez-vous des modules locaux dans votre dossier de fonctions?


4 Réponses :


11
votes

Le problème est résolu en supprimant le fichier "package-lock.json".


5 commentaires

Lors de l'utilisation de Python, Pipfile et Pipfile.lock doivent également être exclus via .gcloudignore .


Je n'ai pas de package-lock.json à supprimer? @Jennings


Quelle erreur avez-vous obtenu ? est-ce la même erreur que j'ai mise à afficher? cela s'est-il produit lors du déploiement dans Google Cloud Function?


Cela n'a pas fonctionné pour moi, mais en supprimant node_modules et en exécutant npm i, comme mentionné dans la réponse de Jai Prestion.


trouver. -nom "* lock.json"



1
votes

Si vous utilisez les fonctions Cloud, vérifiez si vous avez des erreurs dans le format JSON que vous avez utilisé dans le fichier package.json.


0 commentaires

3
votes

MISE À JOUR (25/11/19)

Selon la réponse de @Jennings, la suppression de package-lock.json ou npm-shrinkwrap.json est la solution temporaire rapide. Il semble que le problème soit lié à Node 10: je peux très bien déployer avec Node 8, mais lorsque j'utilise 10, je dois supprimer le fichier de verrouillage. Bien sûr, l'environnement d'exécution de Node 10 est toujours en version bêta, donc ...


C'est une erreur très stupide avec la journalisation cryptographique.

Essayez l'une des solutions suivantes:

  • Utilisation du nœud 8 au lieu du nœud 10 (bien que récemment corrigé en interne, j'ai trouvé qu'il y a toujours des problèmes avec le nœud 10)
  • Recherchez d'éventuelles dépendances corrompues ou récemment installées et supprimez
  • Nuking package-lock.json et node_modules et exécution de npm install

Pour moi, c'était la première option qui relançait les choses. J'ai également réinitialisé Firebase, réinstallé Firebase-tools et essayé différentes versions de nœuds, même si je ne pense pas que ces étapes aient fait de différence.


1 commentaires

@ luis.parravicini, veuillez envisager de voter pour si cette réponse vous a aidé



0
votes

Lors du déploiement de Cloud Functions, j'ai constaté qu'un seul problème de dépendance dans package.json pouvait 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 haut. J'ai dû ramener "plaid" à 4.0.0 - pour une raison quelconque, je pensais que la version actuelle était plus élevée et j'ai essayé d'utiliser la 6.0.0, qui n'existe pas. Cela a causé une longue liste d'erreurs de tous les modules.

Les erreurs semblaient provenir de tous les modules, donc j'ai pensé que j'avais un problème de version de Node.js (que j'avais également récemment mis à jour), ou un problème avec mon chemin node_modules. Mais quand j'ai commencé à supprimer les dépendances une par une, c'était juste 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"
}


0 commentaires