微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Google Cloud Functions 部署 - 创建删除规则后 NoSuchKey 失败us.artifacts.sha256 图像

如何解决Google Cloud Functions 部署 - 创建删除规则后 NoSuchKey 失败us.artifacts.sha256 图像

在意识到我因 Google Cloud Functions 部署而被收取存储费用后,我阅读了 this thread 并为我的 us.artifacts.{myproject}.appspot.com 文件夹创建了 3 天删除规则。现在我正在尝试部署一个现有的函数并得到以下结果。我该如何解决这个问题?我应该删除整个图像文件夹吗?

[0mFailed to export: Failed to write image to the following tags: [us.gcr.io/myproject/gcf/us-central1/3a36a5e8-92b5-426e-b230-ba19ffc92ba8:MYFUNCTION_version-64: 
GET https://storage.googleapis.com/us.artifacts.myproject.appspot.com/containers/images/sha256:{some long string}?access_token=REDACTED:
unsupported status code 404; body: <?xml version='1.0' encoding='UTF-8'?>
<Error><Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message><Details>No such object: us.artifacts.myproject.appspot.com/containers/images/sha256:{some long string}</Details></Error>]

编辑 1:我的部署命令(之前已经工作了几个月):

gcloud functions deploy MYFUNCTIONNAME --source https://source.developers.google.com/projects/MYPROJECT/repos/MYREPO --trigger-http --runtime nodejs10 --allow-unauthenticated

编辑 2:我有一个单独的云函数,它指向完全相同的源存储库(但位于 europe-west3)并且它更新得很好,没有问题。然而,这个功能是在12月最后一次更新的,而失败的功能是在2天前更新的。

编辑 3:嗯,最后我只是复制了云功能,我能够毫无问题地更新和部署新功能。我保留了容器的 3 天删除时间,并且此功能和其他功能也正在更新,没有问题。不知道为什么这个原始函数一直出现这个错误

解决方法

正如another question的回答中所建议的那样,最好删除整个bucket,此操作将销毁与该bucket相关的所有元素和配置,避免Functions、Storage & Container Registry之间的问题,如果您仅删除容器,一些配置将保留影响进一步部署。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。