Firebase功能无法在所有功能中部署且出现相同错误

时间:2019-06-08 18:27:36

标签: firebase npm google-cloud-functions firebase-cli

我正在尝试部署我的firebase函数,但是所有函数都会返回错误,我之前已经进行了部署,没有任何错误。 自上次部署正确以来,我没有安装任何新产品。 每个函数都返回几乎相同的错误,唯一改变的是“ errorId”

我尝试从firebase-cli注销并再次登录,我从npm更新了firebase-tools,firebase-admin,firebase-functions。 我正在使用firebase deploy --only功能进行部署

部署错误。 构建失败:

{
  "error": {
    "canonicalCode": "INVALID_ARGUMENT",
    "errorMessage": "`npm_install` had stderr output:\nnpm WARN tar ENOENT: no such file or directory, open '/workspace/node_modules/.staging/@types/lodash-973f4ada/common/collection.d.ts'\nnpm WARN tar ENOENT: no such file or directory, open '/workspace/node_modules/.staging/@types/node-29231f2f/inspector.d.ts'\nnpm WARN tar ENOENT: no such file or directory, open '/workspace/node_modules/.staging/@types/node-f1c8db24/inspector.d.ts'\nnpm WARN tar ENOENT: no such file or directory, open '/workspace/node_modules/.staging/@firebase/auth-1b85ce5b/dist/auth.esm.js.map'\nnpm WARN tar ENOENT: no such file or directory, open '/workspace/node_modules/.staging/@firebase/webchannel-wrapper-e6854ec7/dist/index.js'\nnpm ERR! code E404\nnpm ERR! 404 Not Found: grpc@1.20.1\n\nnpm ERR! A complete log of this run can be found in:\nnpm ERR!     /builder/home/.npm/_logs/2019-06-08T18_16_17_266Z-debug.log\n\nerror: `npm_install` returned code: 1",
    "errorType": "InternalError",
    "errorId": "FD2536C1"
  }
}

Package.json:

{
  "name": "functions",
  "engines": {
    "node": "8"
  },
  "description": "Cloud Functions for Firebase",
  "scripts": {
    "lint": "eslint .",
    "serve": "firebase serve --only functions",
    "shell": "firebase functions:shell",
    "start": "npm run shell",
    "deploy": "firebase deploy --only functions",
    "logs": "firebase functions:log"
  },
  "dependencies": {
    "@firebase/storage": "^0.2.16",
    "@google-cloud/vision": "^0.24.0",
    "@sendgrid/mail": "^6.4.0",
    "cors": "^2.8.5",
    "dateformat": "^3.0.3",
    "firebase": "^5.11.1",
    "firebase-admin": "^7.4.0",
    "firebase-functions": "^2.3.1",
    "json2csv": "^4.5.1",
    "mailchimp-api-v3": "^1.13.0",
    "moment-timezone": "^0.5.25",
    "openpay": "^1.0.3",
    "paypal-rest-sdk": "^1.8.1",
    "request": "^2.88.0"
  },
  "devDependencies": {
    "eslint": "^4.12.0",
    "eslint-plugin-promise": "^3.6.0",
    "firebase-functions-test": "^0.1.6"
  },
  "private": true
}

正确部署功能。

更新*** 我尝试删除所有内容并卸载除firebase功能所需的软件包以外的所有软件包,并从节点8中的一个测试功能重新开始。我遇到了同样的问题,节点6已部署,但我需要使用节点8因为我需要使用await / async

4 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,我在2019年6月11日部署了我的最新版本,没有任何问题,我没有进行任何软件包更改或更新,但是现在部署失败。

我跑了

  

sudo npm i -g firebase-tools

  

npm install --save firebase-functions @ latest

并尝试再次部署,但仍然是相同的错误

答案 1 :(得分:0)

我有类似的部署失败。我认为这是由于我从firebase deploy目录而不是app目录运行app\functions引起的。无论如何,我已经从终端(在我的情况下使用VSCode)运行了以下命令,将它们更改为app\functions目录。这样部署就可以完美进行。

npm install --save @google-cloud/storage
npm install --save firebase-admin@latest
npm install --save firebase-functions@latest
firebase deploy

希望有帮助。

答案 2 :(得分:0)

我遇到了类似的问题,最终我的 package.json 中缺少一个模块

您可以在此处查看更详细/有用的日志:https://console.cloud.google.com/logs

答案 3 :(得分:0)

您可以通过使用此命令打开日志来查看实际日志

firebase functions:log

具体问题将在那里可见。我有时会遇到像 package.json 中缺少包一样简单的错误

如果 firebase 可以直接显示有关错误的更好信息,那将会很有帮助。但至少我们可以在这里找到它们。