【问题标题】:Google Firebase Functions deployment fails - what can I do?Google Firebase Functions 部署失败 - 我该怎么办?
【发布时间】:2021-11-16 12:17:26
【问题描述】:

错误信息:

Error: There was an error deploying functions

firebease-debug.log 包含以下内容:

 [debug] [2021-11-16T12:12:16.165Z] Error: Failed to upsert schedule function lab2 in region europe-west3

功能代码:

exports.lab2 =
    functions
        .region('europe-west3')
        .pubsub.schedule('*/10 * * * *')
        .onRun(lab);

我能做什么?谷歌支持导致stackoverflow,所以我把它贴在这里。有没有更好的方法来处理 Google Cloud 问题?

【问题讨论】:

  • 当您在 Firebase Functions 中使用计划函数时,会创建一个 Cloud Scheduler 工作所需的 App Engine 实例。你可以阅读它here。他们使用默认设置的资源位置。我认为您收到该错误是因为您指定的默认 GCP 资源位置与您计划的云功能的区域之间存在差异。如果您单击 Firebase 中项目概述旁边的齿轮,您可以看到您的资源所在的位置。
  • 另外,您是如何联系 Google Cloud 支持的?如果有代表您创建的公共问题,请在此处分享问题链接。
  • 谢谢,默认资源位置未设置,我发起设置。听起来像是一个很好的提示 - 将报告结果。
  • 设置默认资源位置后,现在部署工作正常。非常感谢。 google 应该改进 firebase + cloud 中的错误消息。
  • 太好了。我已经发布了我的评论,作为其他面临相同问题的人的答案。如果我的回答有用,请点击它左侧的点赞按钮 (▲)。如果它回答了您的问题,请单击复选标记 (✓) 接受它。这样其他人就知道你得到了(足够的)帮助。

标签: google-cloud-platform google-cloud-functions


【解决方案1】:

当您在 Firebase Functions 中使用计划函数时,会创建一个 App Engine 实例,该实例是 Cloud Scheduler 工作所必需的。你可以阅读它here。在设置过程中,系统会提示您选择项目的默认 Google Cloud Platform (GCP) 资源位置(如果在设置其他服务时尚未选择它)。

您收到该错误是因为您指定的默认 GCP 资源位置与您计划的 Cloud Function 的区域之间存在差异。如果您单击 Firebase 中项目概述旁边的齿轮,您可以看到您的资源所在的位置。将默认 GCP 资源位置设置为与调度程序功能区域相同,即可解决问题。

【讨论】:

  • 我遇到了同样的错误,但问题与地区无关。在本地使用我的凭据 firebase deploy 可以工作。在带有 GOOGLE_APPLICATION_CREDENTIALS 的 CI 中,firebase 部署失败,出现清理构建映像的未处理错误。如果不纠正,这可能会导致每月的小额账单。您可以尝试通过重新部署来删除这些图像,也可以在console.cloud.google.com/artifacts/docker/xxxx/us-central1/… 手动删除它们
  • @LeblancMeneses 我有同样的问题。我也找不到解决办法。
  • 好吧,我整个星期天都在为此苦苦挣扎,结果证明只是缺乏关注,我会尽力帮助你的。可能你做错了 Cron 字符串,我不知道为什么,但是我使用的生成器有 7 个字符,但是 GCP 接受的 Unix Cron 格式只有 5 个。所以只需查看此文档:
【解决方案2】:

我们的调度功能部署失败的原因是 cron 作业公式。由于某种原因,firebase 无法理解 0 0 3 1/1 * ? *,但可以理解 every 5 minutes

很遗憾,firebase 没有提供更好的错误消息。 Error: Failed to upsert schedule function xxx in region xxx 太笼统了。

【讨论】:

    猜你喜欢
    • 2018-08-18
    • 2017-08-25
    • 2010-09-14
    • 2020-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多