正确配置开发服务器和生产服务器之后,我想在Google App Engine上建立一个过渡环境,该环境对在将新开发版本部署到生产环境之前进行实时测试很有用。
我知道两种不同的方法:
A. 第一个选项是通过修改app.yaml 版本参数。
version: app-staging
我不喜欢这种方法的原因是生产数据被我的阶段测试污染了,因为(如果我错了,请纠正我):
关于第一点,我不知道是否可以使用新的namespaces python API“修复”它。
B. 第二个选项是通过修改app.yaml 应用程序参数
application: foonamestaging
使用这种方法,我将创建完全独立于生产版本的第二个应用程序。
我看到的唯一缺点是,我被迫配置第二个应用程序(设置管理员)。
使用像Gaebar这样的备份/还原工具,此解决方案也可以很好地工作。
您使用哪种方法为Web应用程序设置过渡环境?
另外,在部署之前,您是否有任何自动脚本来更改yaml?
最佳答案
我在设置中选择了第二个选项,因为它是最快的解决方案,并且我还没有编写任何脚本来更改部署时的应用程序参数。
但是从我现在的 Angular 来看,选项A是更清洁的解决方案。您可以使用几行代码根据版本切换数据存储 namespace ,您可以从环境变量CURRENT_VERSION_ID动态获取该版本,如此处所述:http://code.google.com/appengine/docs/python/runtime.html#The_Environment