Can't deploy Firebase functions (Failed to fetch Run service undefined)
回答 6
浏览 5216
2022-12-10
不能部署Firebase函数。我有两个项目别名,在第一个项目(dev)中工作正常,但在第二个项目(prod)中不正常。
每当我写firebase deploy --only functions
时,我得到以下信息
i deploying functions
i functions: ensuring required API cloudfunctions.googleapis.com is enabled...
i functions: ensuring required API cloudbuild.googleapis.com is enabled...
i artifactregistry: ensuring required API artifactregistry.googleapis.com is enabled...
+ functions: required API cloudbuild.googleapis.com is enabled
+ artifactregistry: required API artifactregistry.googleapis.com is enabled
+ functions: required API cloudfunctions.googleapis.com is enabled
i functions: preparing codebase default for deployment
! functions: package.json indicates an outdated version of firebase-functions. Please upgrade
using npm install --save firebase-functions@latest in your functions directory.
! functions: Please note that there will be breaking changes when you upgrade.
i functions: Loaded environment variables from .env.prod.
! functions: You are using an old version of firebase-functions SDK (3.15.7). Please update
firebase-functions SDK to >=3.20.0
i functions: preparing functions directory for uploading...
i functions: packaged E:\FlutterProjects\pegasus\functions (218.61 KB) for uploading
Error: Failed to fetch Run service undefined
6 个回答
#1楼
已采纳
得票数 56
我也有同样的问题,在安装了最新的Firebase工具后,我的问题得到了解决。
npm 安装 -g firebase-tools
这对我来说是个好办法:Sudo npm install -g firebase-tools --force
- David Linke 2022-12-14
如果你在你的CI/CD管道中添加了firewase-tools,但它一直以同样的错误失败,你只需要更新管道中使用的firewase-tools版本。参见cloud.google.com/build/docs/deploying-builds/deploy-firebase了解更多
- Ojetokun 2022-12-14
如果你被困在较低的版本上(我被困在11.1.0上),那么就按照这个stackoverflow.com/a/60046980/16653398来获得11.18.0的版本。
- Trevor 2022-12-18
#2楼
得票数 8
通过使用命令npm install -g firebase-tools.
升级firebase-tools的版本,也自动修复了这一问题。
如果你遇到下面的错误,你可以添加--force标志
npm ERR! code EEXIST
npm ERR! path /usr/local/bin/firebase
npm ERR! EEXIST: file already exists
npm ERR! File exists: /usr/local/bin/firebase
#3楼
得票数 3
你可能还需要重新为你的终端提供资源。我在npm i -g firebase-tools
后检查了我的版本,仍然不是11.18.0,但做了一个source ~/.zshrc
,就解决了这个问题。
#4楼
得票数 1
你需要更新你的Firebase-tools。运行npm install -g firebase-tools。
#5楼
得票数 1
请确保你在函数文件夹中执行npm install -g firebase-tools
。
#6楼
得票数 1
当你使用Firebase Tools的版本小于或等于v11.18.0
时,你可能会遇到下面的错误。
Error: Failed to fetch Run service undefined
你应该考虑的第一件事是更新到比v11.18.0
更新或等于v11.18.0
的版本。在我回答这个问题的时候,最新版本是11.20.0
。
此外,通过在你的终端中使用以下一行代码来安装最新的Firebase工具。
npm install -g firebase-tools --force
npm audit fix
P.S. 还建议将Firebase功能更新到最新的可用版本,现在它是4.1.1
。