我们的GAE目前没有声明任何模块,我们希望将其转换为described here,然后添加第二个模块,以进行后端工作
我很困惑我如何在测试环境中测试新的模块化配置(即测试'版本')而模块声明没有泄漏到我们的默认版本中(称为&# 39; PROD&#39)。我们的正常开发过程是将新代码部署到测试版本。例如在app.yaml
我们改变了:
version: prod
到
version: testing
..然后部署。一旦它正常工作,我们就切换回version: prod
并再次部署。但是,正如文档所解释的那样,版本现在属于模块:
因此,当我想测试第二个模块时,模块的声明似乎超出了版本的范围,因此可能会影响其他版本(例如&#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'现在要知道模块吗?基于上图,它似乎会,但如果是这样的话,我无法看到我如何测试我的转换。
答案 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上提供) 。