用GOOGLE APP ENGINE上传应用程序
用GOOGLE APP ENGINE上传应用程序
App Engine SDK 包括用于上传应用程序文件的命令。与 SDK 的其余部分一样,appcfg.py
可在装有 Python 2.5 的任何计算机上运行。
所以要想使用的话要先安装Python 可以自己下载安装。
要上传应用程序文件,请通过 update
操作和应用程序根目录的名称运行 appcfg.py
命令。根目录应包含应用程序的 app.yaml 文件。
appcfg.py update myapp/
appcfg.py
将从 app.yaml
文件获得应用程序 ID,并提示您提供 Google 帐户的电子邮件地址和密码。使用您的帐户成功登录后,appcfg.py
将存储一个“cookie”以便在后续尝试时不需要提示输入密码。
要在提示时进行保存,可以使用 --email
选项在命令行上指定电子邮件地址。不能将密码指定为命令行选项。
appcfg.py --email=Albert.Johnson@example.com update myapp/
appcfg.py 选项
appcfg.py
命令包含一组选项、一个操作和该操作的参数。
包含以下操作:
appcfg.py [options] update
为给定了应用程序的根目录的应用程序上传文件。应用程序 ID 和版本从应用程序目录中的
app.yaml
文件获取。appcfg.py [options] rollback
撤消给定应用程序的部分完成的更新。如果更新中断并且命令报告由于锁定而无法更新应用程序,则可以使用此操作。
appcfg.py [options] vacuum_indexes
删除 App Engine 中不使用的数据库索引。如果从 index.yaml 中删除某索引定义,则当上传应用程序时,该索引不会被自动删除,因为它可能正被另一版本的应用程序使用。当不再需要所有旧索引时执行此操作。
appcfg.py help
打印有关给定操作的帮助消息,然后退出。
appcfg.py
命令接受以下适用于所有操作的选项:
--quiet
成功时不打印消息。
--verbose
打印有关命令正在执行的操作的消息。
--noisy
打印许多有关命令要执行的操作的消息。当与 App Engine 团队协作来解决上传问题时,此选项通常很有用。
--email=...
应用程序管理员的 Google 帐户的电子邮件地址,适用于需要登录的操作。如果 cookie 被遗漏且以前使用该命令时未存储 cookie,则该命令将提示输入该值。
--server=...
App Engine 服务器主机名。默认为
appengine.google.com
。--host=...
用于与远程程序调用配合使用的本地计算机的主机名。
--no_cookies
请勿将管理员登录凭证存储为 cookie;每次登录时都提示输入密码。
--force
强制删除不使用的索引。默认情况下,上传应用程序不会从服务器中删除不使用的索引,即使这些索引未显示在
index.yaml
文件中。--max_size=...
要上传的文件的最大大小,表示为字节数。不会上传大于该大小的文件。默认为
1048576
。服务器当前将文件的最大大小强制定为 1,048,576 个字节,因此增加该值没有任何作用。
appcfg.py 和 HTTP 代理
如果您在 HTTP 代理后运行 appcfg.py
,则必须告知 appcfy.py
该代理的名称。要为 appcfg.py
设置 HTTP 代理,请设置 http_proxy
环境变量。例如,在 bash shell 中:
export http_proxy="http://cache.mycompany.com:3128"appcfg.py update myapp