我们有许多依赖于Google云功能的应用程序 - 在Cloud功能更新和应用程序更新之间存在异步。
假设我们首先更新云功能,然后应用程序中断。但是,如果我们首先更新应用程序,它将无法使用当前版本的云功能。
解决此问题的方法是能够指定要执行的云功能版本。这可能吗?
非常感谢!
云功能中没有内置版本控制方案。更新函数时,它会立即推出。
如果您想要这样的版本控制,您当然可以将其包含在您使用的命名方案中。因此,如果您想要以不兼容的方式更新现有的myFunction
,请部署myFunction_v2
。
随着时间的推移v1
客户端消失,你可以再次将版本化的v2
函数更新为默认的myFunction
。
或者,您可以在代码本身和调用中包含版本号。因此,让每个客户端传递它期望获得的功能版本,然后让服务器端代码执行条件检查:
if (context.params.api_version === 1) {
... behavior 1
}
else if (context.params.api_version === 2) {
... behavior 2
}