检索旧版本的 Google Cloud 函数源

Posted

技术标签:

【中文标题】检索旧版本的 Google Cloud 函数源【英文标题】:Retrieving an old version of a Google Cloud function source 【发布时间】:2018-03-29 14:08:04 【问题描述】:

我不小心丢失了云函数的最新源文件,然后使用旧版本再次部署了云函数。

每次部署云功能时,我都会在控制台上看到部署的版本 ID。

我可以做些什么来回滚到源文件的先前版本吗?

【问题讨论】:

您也许可以使用此处显示的方法检索它:***.com/questions/43916490/… Get code from firebase console which I deployed earlier的可能重复 我知道代码存在于 Web 控制台上,但是因为我不小心部署了旧版本的功能,我首先必须回滚到我所做的部署的先前版本,这样的事情可能吗?做?如果不是,那他们为什么要保留版本计数? 【参考方案1】:

我终于明白了:

每次部署到云函数时,都会得到如下输出行:

sourceArchiveUrl:gs://my-store-bucket/us-central1-function_name-xxoxtdxvxaxx.zip

我进入了我的 Google Cloud Platform Developer Console -> Cloud Functions -> function_name -> Source 选项卡

几乎在底部它说: 来源位置

my-store-bucket/us-central1-function_name-xxoxtdxvxaxx.zip

与 CLI 中显示的相同,但没有 gs:// 该链接将我引向以下内容: https://storage.cloud.google.com/my-store-bucket/us-central1-function_name-........

我从链接中删除了之后的所有内容

https://storage.cloud.google.com/my-store-bucket

这让我看到了一个巨大的文件列表,每个文件都代表了我在每次部署时的所有云功能的图像,这正是我所需要的!

剩下要做的就是找到我错误部署前最后日期的文件

【讨论】:

我现在看不到了 改成了一个下载源:“下载zip”按钮,如果右击按钮修改URL,可以编辑functionVersion参数。 截至 2021 年 6 月,Google 似乎已经改变了他们这样做的方式。我可以通过functionVersion 参数返回一个版本,但没有之前的版本。【参考方案2】:

以下内容显示了在何处查找和恢复您的 Google Cloud Function 的先前部署版本。

输入函数后,您可以在 GCF 屏幕左上角的下拉菜单中选择每个以前的版本。

在此概览页面上,在未进入 EDIT 模式时,您可以从菜单中选择一些以前的版本(尽管不是全部) - 然后部署所选版本(此处:版本 5)。

【讨论】:

dropbox.com/s/4wfdgxiha2hjf0w/… 奇怪。 IDC 那...? 也许只有在失败的情况下。【参考方案3】:

当您部署新版本的 CF 时,代码存储在 GCS bucket 中。此存储桶仅存储最近部署的 2 个版本。您可以设置retention policy 以保留旧版本的 CF。

bucket的名字类似这样:

gcf-source-[ID]-[函数区域]

恢复旧版本 CF 的解决方法是从存储桶下载代码并使用它重新部署函数。

【讨论】:

以上是关于检索旧版本的 Google Cloud 函数源的主要内容,如果未能解决你的问题,请参考以下文章

检索旧的缓存版本的网页

使用 Google Cloud pub sub 实现 MQTT

setQueryParameters 不是“com.google.cloud”的一部分,名称:“google-cloud-bigquery”,版本:“0.4.0”

适用于 Centos/Linux 的 Google chrome 旧版本

发布旧版本:Google Play 管理中心

软件更新丨Spring Cloud Alibaba发布第二个版本,Spring发来贺电