无法部署到GAE

时间:2013-01-30 01:03:13

标签: python google-app-engine python-2.7

08:38 AM Scanning files on local disk.
2013-01-30 08:38:30,884 ERROR appcfg.py:1856 Invalid character in filename: Icon

Error 409: --- begin server output ---
Another transaction by user SLim is already in progress for app: s~pekkylab, version: 1. That user can undo the transaction with "appcfg rollback".
--- end server output ---
Password for myemail@email.com: If deploy fails you might need to 'rollback' manually.
The "Make Symlinks..." menu option can help with command-line work.
*** appcfg.py has finished with exit code 1 ***

虽然我试图上传但是我收到了此错误,然后按照其指导员执行回滚,然后我在此处收到其他错误

08:41 AM Application: pekkylab
08:41 AM Host: appengine.google.com
08:41 AM Rolling back the update.
Traceback (most recent call last):
  File "/usr/local/bin/appcfg.py", line 171, in <module>
    run_file(__file__, globals())
  File "/usr/local/bin/appcfg.py", line 167, in run_file
    execfile(script_path, globals_)
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 4377, in <module>
    main(sys.argv)
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 4368, in main
    result = AppCfgApp(argv).Run()
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 2605, in Run
    self.action(self)
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 4103, in __call__
    return method()
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 3553, in Rollback
    self._Rollback()
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 3569, in _Rollback
    appversion.Rollback()
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 2151, in Rollback
    self.Send('/api/appversion/rollback')
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py", line 1842, in Send
    return self.rpcserver.Send(url, payload=payload, **self.params)
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appengine_rpc.py", line 391, in Send
    f = self.opener.open(req)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 391, in open
    response = self._open(req, data)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 409, in _open
    '_open', req)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 369, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 1181, in https_open
    return self.do_open(httplib.HTTPSConnection, req)
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/fancy_urllib/fancy_urllib/__init__.py", line 379, in do_open
    url_error.reason.args[1])
fancy_urllib.InvalidCertificateException: Host appengine.google.com returned an invalid certificate (_ssl.c:499: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed): 
To learn more, see http://code.google.com/appengine/kb/general.html#rpcssl

任何线索为什么会发生这种情况?

4 个答案:

答案 0 :(得分:4)

我猜你正在使用MacOS,而且这个文件是Icon?(详见SU answer)。如果列出终端中的所有文件,则可以轻松验证它:ls

要跳过该文件,请将其添加到app.yaml文件的末尾并重新部署:

skip_files:
- ^(.*/)?Icon\r

您可以在文档中的skipping files上阅读更多内容。

此外,您可能需要在重新部署之前回滚:

appcfg.py rollback /path/to/project

如果没有任何问题,请尝试部署到新应用程序并再试一次:)

答案 1 :(得分:0)

正如日志所述,图标的文件名中可能存在一些奇特的字符。 重命名它,并更新您的应用程序以使用重命名的版本。

您应手动回滚事务(“appcfg rollback”),然后再次尝试部署。

答案 2 :(得分:0)

尝试以该方式appcfg.py update . --no_cookies

使用参数no_cookies进行部署

答案 3 :(得分:0)

您的应用文件夹可能有自定义图标...生成“隐藏”图标文件,将其删除。