就在最近,当我试图通过Firebase部署我的功能时,我开始遇到一个问题。在运行命令firebase deploy --only functions时,我的四个函数中的一个正确部署,但其他三个函数在firebase控制台中抛出此错误:
部署错误。生成失败:生成错误详细信息不可用。请检查url上的日志到我的GCP日志
当我查看日志时,为每个失败的函数显示的错误消息是:
生成步骤3 "us.gcr.io/fn-img/buildpacks/nodejs10/builder:nodejs10_20200922_20_RC00“失败:非零状态下退出的步骤: 46
我已经搜索和谷歌了很长一段时间,我找不到任何报告相同的错误代码,同样的非零状态返回,或功能失败的步骤3。似乎没有太多的文档来故障排除错误。
希望这里有人能给我指明正确的方向。
谢谢!
发布于 2020-11-02 20:07:20
此错误似乎是由于Firebase的历史/还原功能中缺少(或不可访问)文件造成的。我不知道原因是什么。
一个对我有用的解决办法是:
删除通常> firebase deploy部署的web控制台
发布于 2020-12-10 01:32:03
答,因为我不能评论作为回应,马库斯的修复为我工作,谢谢你的朋友!删除该函数意味着它创建一个新函数,而不是试图还原它,这是构建过程中失败的步骤3。
作为对xaphod的响应,我为工件存储桶中的旧文件设置了一个生命周期规则,这是迄今为止我存储中最大的存储桶,并且正在推动自由层限制。我设置的时间可能有点短,上次更新5天后删除,但是直到今天才意外地遇到这个问题(可能是因为每次更新时我都会将它们全部部署)。现在,我删除了生命周期规则,尽管我希望它不再运行存储空间,但我最终可能会联系支持部门,看看是否有一种方法可以在不删除最新的生命周期的情况下完成它们的生命周期,但不确定为什么它不只是清除更新中的旧图像。
找到了建议设置生命周期规则的帖子firebase storage artifacts is huge,并进行了一些测试,删除了us.artifacts中的所有文件并部署了所有函数(在所有函数上都有错误,只删除了之前需要更新的函数并自行部署)。不会导致任何错误,只需稍长时间,因此我认为可以通过删除所有错误或不删除任何错误来解决问题,可能会将生命周期规则设置为立即删除并处理增加的部署时间,而不是防火墙存储的成本。
https://stackoverflow.com/questions/64281850
复制相似问题