When I try to deploy using the admin interface in web2py I get the
following for GAE Output:
01:55 PM Host: appengine.google.com
01:55 PM Application: firstappongae; version: 1
Traceback (most recent call last):
File "/usr/local/bin/appcfg.py", line 171, in
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 4507, in
main(sys.argv)
File
"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py",
line 4498, 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 2686, in Run
self.action(self)
File
"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py",
line 4233, in __call__
return method()
File
"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py",
line 3244, in Update
updatecheck.CheckForUpdates()
File
"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appcfg.py",
line 629, in CheckForUpdates
runtime=self.config.runtime)
File
"/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appengine_rpc.py",
line 393, in Send
f = self.opener.open(req)
File "/Users/blbgse/anaconda/lib/python2.7/urllib2.py", line 400, in open
response = self._open(req, data)
File "/Users/blbgse/anaconda/lib/python2.7/urllib2.py", line 418, in _open
'_open', req)
File "/Users/blbgse/anaconda/lib/python2.7/urllib2.py", line 378, in
_call_chain
result = func(*args)
File "/Users/blbgse/anaconda/lib/python2.7/urllib2.py", line 1215, 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:504: error:14090086:SSL
routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed):
To learn more, see http://code.google.com/appengine/kb/general.html#rpcssl
On Sunday, March 10, 2013 1:15:01 PM UTC-4, curiouslearn wrote:
>
> Hi Massimo,
>
> Thank you for looking into this. The file is VERSION is present at that
> location. It has the following permissions:
>
> -rw-rw-rw- 1 username staff 51 Mar 9 17:27 VERSION
>
> Does it need to be executable?
>
> For the millionth time thanks for creating web2py and trying to make
> things such as deployment on various platforms easier.
>
>
>
> On Sunday, March 10, 2013 10:23:57 AM UTC-4, Massimo Di Pierro wrote:
>>
>> Looks like a file permission issue:
>>
>> It cannot read or
>> find:
>> /Users/username/Dropbox/LearnSoftware_and_Math/learnweb2py/web2py1/web2py/VERSION
>>
>> On Saturday, 9 March 2013 17:25:42 UTC-6, curiouslearn wrote:
>>>
>>> I am trying to learn how to deploy a web2py app on GAE. I downloaded a
>>> fresh install of web2py from the web2py site today and then changed the
>>> app.yaml file according to instructions in given in the web2py book. Then I
>>> tried running the app on the development server using the
>>> GoogleAppEngineLauncher. When I click run I get a green arrow next to the
>>> application name. However, when I go to the browser to look at the
>>> application, I get a server error.
>>>
>>> I could not attach the files l with this message (was getting an error
>>> when trying to post the message), so copying and pasting them. I would
>>> really appreciate any help understanding what may be happening.
>>>
>>> Thank you.
>>>
>>> *app.yaml*
>>>
>>> # For Google App Engine deployment, copy this file to app.yaml
>>> # and edit as required
>>> # See
>>> http://code.google.com/appengine/docs/python/config/appconfig.html
>>> # and http://web2py.com/book/default/chapter/11?search=app.yaml
>>>
>>> application: firstappongae
>>> version: 1
>>> api_version: 1
>>>
>>> # use this line for Python 2.5
>>> # runtime: python
>>>
>>> # use these lines for Python 2.7
>>> # upload app with: appcfg.py update web2py (where 'web2py' is web2py's
>>> root directory)
>>> #
>>> runtime: python27
>>> threadsafe: true # true for WSGI & concurrent requests (Python 2.7
>>> only)
>>>
>>> default_expiration: "24h" # for static files
>>>
>>> handlers:
>>>
>>> - url: /(?P<a>.+?)/static/(?P<b>.+)
>>> static_files: applications/\1/static/\2
>>> upload: applications/(.+?)/static/(.+)
>>> secure: optional
>>>
>>> - url: /favicon.ico
>>> static_files: applications/welcome/static/favicon.ico
>>> upload: applications/welcome/static/favicon.ico
>>>
>>> - url: /robots.txt
>>> static_files: applications/welcome/static/robots.txt
>>> upload: applications/welcome/static/robots.txt
>>>
>>> - url: .*
>>> # script: gaehandler.py # CGI
>>> script: gaehandler.wsgiapp # WSGI (Python 2.7 only)
>>> secure: optional
>>>
>>> admin_console:
>>> pages:
>>> - name: Appstats
>>> url: /_ah/stats
>>>
>>> skip_files: |
>>> ^(.*/)?(
>>> (app\.yaml)|
>>> (app\.yml)|
>>> (index\.yaml)|
>>> (index\.yml)|
>>> (#.*#)|
>>> (.*~)|
>>> (.*\.py[co])|
>>> (.*/RCS/.*)|
>>> (\..*)|
>>> (applications/(admin|examples)/.*)|
>>> ((admin|examples|welcome)\.(w2p|tar))|
>>> (applications/.*?/(cron|databases|errors|cache|sessions)/.*)|
>>> ((logs|scripts)/.*)|
>>> (anyserver\.py)|
>>> (web2py\.py)|
>>> ((cgi|fcgi|modpython|wsgi)handler\.py)|
>>> (epydoc\.(conf|css))|
>>> (httpserver\.log)|
>>> (logging\.example\.conf)|
>>> (route[rs]\.example\.py)|
>>> (setup_(app|exe)\.py)|
>>> (splashlogo\.gif)|
>>> (parameters_\d+\.py)|
>>> (options_std.py)|
>>> (gluon/tests/.*)|
>>> (gluon/(rocket|winservice)\.py)|
>>> (contrib/(gateways|markdown|memcache|pymysql)/.*)|
>>> (contrib/(populate|taskbar_widget)\.py)|
>>> (google_appengine/.*)|
>>> (.*\.(bak|orig))|
>>> )$
>>>
>>> builtins:
>>> - remote_api: on
>>> - appstats: on
>>> - admin_redirect: on
>>> - deferred: on
>>>
>>>
>>>
>>>
>>>
>>>
>>> *LOG*
>>>
>>>
>>> *** Running dev_appserver with the following flags:
>>> --admin_console_server= --port=8080
>>> Python command: /usr/bin/python2.7
>>> WARNING 2013-03-09 23:06:00,520 dev_appserver.py:3578] The datastore
>>> file stub is deprecated, and
>>> will stop being the default in a future release.
>>> Append the --use_sqlite flag to use the new SQLite stub.
>>>
>>> You can port your existing data using the --port_sqlite_data flag or
>>> purge your previous test data with --clear_datastore.
>>>
>>> WARNING 2013-03-09 23:06:00,525 dev_appserver.py:3682] Could not
>>> initialize images API; you are likely missing the Python "PIL" module.
>>> ImportError: No module named _imaging
>>> INFO 2013-03-09 23:06:00,531 dev_appserver_multiprocess.py:656]
>>> Running application dev~firstappongae on port 8080:
>>> http://localhost:8080
>>> INFO 2013-03-09 23:06:00,531 dev_appserver_multiprocess.py:658]
>>> Admin console is available at: http://localhost:8080/_ah/admin
>>> ERROR 2013-03-09 23:06:59,830 dev_appserver_import_hook.py:1251]
>>> Third party package Crypto must be included in the "libraries:" clause of
>>> your app.yaml file in order to be imported.
>>> ERROR 2013-03-09 23:07:00,152 wsgi.py:219]
>>> Traceback (most recent call last):
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py",
>>>
>>> line 196, in Handle
>>> handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py",
>>>
>>> line 255, in _LoadHandler
>>> handler = __import__(path[0])
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 692, in Decorate
>>> return func(self, *args, **kwargs)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 1766, in load_module
>>> return self.FindAndLoadModule(submodule, fullname, search_path)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 692, in Decorate
>>> return func(self, *args, **kwargs)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 1630, in FindAndLoadModule
>>> description)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 692, in Decorate
>>> return func(self, *args, **kwargs)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 1577, in LoadModuleRestricted
>>> description)
>>> File
>>> "/Users/username/Dropbox/LearnSoftware_and_Math/LearnWeb2Py/web2py1/web2py/gaehandler.py",
>>>
>>> line 56, in <module>
>>> import gluon.main
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 692, in Decorate
>>> return func(self, *args, **kwargs)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 1766, in load_module
>>> return self.FindAndLoadModule(submodule, fullname, search_path)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 692, in Decorate
>>> return func(self, *args, **kwargs)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 1630, in FindAndLoadModule
>>> description)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 692, in Decorate
>>> return func(self, *args, **kwargs)
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 1577, in LoadModuleRestricted
>>> description)
>>> File
>>> "/Users/username/Dropbox/LearnSoftware_and_Math/LearnWeb2Py/web2py1/web2py/gluon/main.py",
>>>
>>> line 107, in <module>
>>> version_info = open(pjoin(global_settings.gluon_parent, 'VERSION'),
>>> 'r')
>>> File
>>> "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",
>>>
>>> line 608, in __init__
>>> raise IOError(errno.EACCES, 'file not accessible', filename)
>>> IOError: [Errno 13] file not accessible:
>>> '/Users/username/Dropbox/LearnSoftware_and_Math/learnweb2py/web2py1/web2py/VERSION'
>>> INFO 2013-03-09 23:07:00,167 dev_appserver.py:3104] "GET / HTTP/1.1"
>>> 500 -
>>>
>>>
--
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.