GAE App.yaml - src的独立目录和构建静态文件

时间:2013-03-12 21:07:15

标签: google-app-engine backbone.js r.js

如果存在其他目录,是否可以选择覆盖Google App Engine app.yaml文件中的静态文件目录?我有一个源目录(未明确)和一个构建目录(缩小和连接)。我希望Google App Engine自动使用构建目录而不是src目录(如果存在)。这样我就可以开发使用src目录,然后创建一个构建并进行部署。然后,如果我删除构建目录,GAE将返回从src目录提供静态文件。

我需要这样做的原因是因为我正在使用Backbone.js构建一个应用程序。 Require.js作为模块。我需要能够optimize我的代码和部署,而不必每次都更改我的app.yaml文件。

2 个答案:

答案 0 :(得分:2)

我对我当前的系统非常满意,我的框架在模板中使用不同的路径来源javascript文件。然后在启动时,通过检查os.environ和get_application_id()的组合,我会自动检测我是在本地运行dev_appserver,还是在我的测试appid或GAE上的生产appid下运行。

接下来的步骤,你很可能想要积极地缓存你的缩小的JS,在这种情况下,你将无法强迫客户更新新版本。典型的解决方法是在更新时将散列或日期字符串附加到缩小的js文件名。这也是您在框架/模板层而不是app.yaml中需要做的事情。

答案 1 :(得分:1)

我会在模板层执行此操作 - 当您转到包含指向资产的链接的模板时,请检查缩小版本是否存在。如果是,请链接到该 - 否则,链接到未经授权的版本。

如果您在不创建构建的情况下意外部署,这也会有所帮助 - 您只需提供未经优化的资产。