迁移到app引擎模块,首先测试版本?

时间:2015-09-04 21:44:25

标签: google-app-engine migration

我们的GAE目前没有声明任何模块,我们希望将其转换为described here,然后添加第二个模块,以进行后端工作

我很困惑我如何在测试环境中测试新的模块化配置(即测试'版本')而模块声明没有泄漏到我们的默认版本中(称为&# 39; PROD&#39)。我们的正常开发过程是将新代码部署到测试版本。例如在app.yaml

我们改变了:

version: prod

version: testing

..然后部署。一旦它正常工作,我们就切换回version: prod并再次部署。但是,正如文档所解释的那样,版本现在属于模块:

modules structure

因此,当我想测试第二个模块时,模块的声明似乎超出了版本的范围,因此可能会影响其他版本(例如&#39) ; PROD&#39)。例如,我之前使用此app.yaml

部署到应用引擎
application: simple-sample
version: prod
runtime: python27

然后我重新配置我的应用以使用'工作人员'模块,我有两个yaml文件:

的app.yaml

application: simple-sample
version: testing
runtime: python27

和worker.yaml

application: simple-sample
module: worker
version: testing
runtime: python27

当我部署该代码时,它是否会对当前正在运行的版本产生任何影响' prod'?即将' prod'现在要知道模块吗?基于上图,它似乎会,但如果是这样的话,我无法看到我如何测试我的转换。

1 个答案:

答案 0 :(得分:1)

您当前的应用程序已作为默认模块运行。您应该可以使用default_dot-appname.appspot.com上的url parsing rules进行检查,在那里您应该获得应用的 prod 版本。

将应用程序转换为模块时,您必须在新的app.yaml文件中指定此默认模块名称。并且您将拥有测试版本,这不会干扰您的旧版本。

准备就绪后,您可以在 prod 版本上推出已转换的应用,覆盖旧应用,也可以推出新版本,例如 prod_new 并将其标记为GAE控制台中的默认应用版本(允许您保留未转换的应用 prod 版本,在prod-dot-default-dot-appname.appspot.com上提供) 。