Crypto with App Engine SDK 1.7.2

265 views
Skip to first unread message

coto

unread,
Oct 2, 2012, 6:30:46 AM10/2/12
to google-a...@googlegroups.com
What's the best way on getting pycrypto to work for dev with GAE?


But this is what happen when you run locallly:

/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python /usr/local/google_appengine/dev_appserver.py .
WARNING  2012-10-02 10:07:30,936 rdbms_mysqldb.py:74] The rdbms API is not available because the MySQLdb library could not be loaded.
WARNING  2012-10-02 10:07:31,431 datastore_file_stub.py:518] Could not read datastore data from /var/folders/zr/tclqpy5j6fx797t1fqf2j_d00000gn/T/dev_appserver.datastore
WARNING  2012-10-02 10:07:31,469 dev_appserver.py:3621] Could not initialize images API; you are likely missing the Python "PIL" module. ImportError: No module named _imaging
INFO     2012-10-02 10:07:31,568 dev_appserver_multiprocess.py:655] Running application dev~sandengine on port 8080: http://localhost:8080
INFO     2012-10-02 10:07:31,568 dev_appserver_multiprocess.py:657] Admin console is available at: http://localhost:8080/_ah/admin
INFO     2012-10-02 10:07:37,680 recording.py:673] Saved; key: __appstats__:057600, part: 27 bytes, full: 1643 bytes, overhead: 0.000 + 0.001; link: http://localhost:8080/_ah/stats/details?time=1349172457674
INFO     2012-10-02 10:07:37,696 dev_appserver.py:3056] "GET /_ah/admin HTTP/1.1" 302 -
INFO     2012-10-02 10:07:37,868 recording.py:673] Saved; key: __appstats__:057700, part: 112 bytes, full: 14075 bytes, overhead: 0.001 + 0.007; link: http://localhost:8080/_ah/stats/details?time=1349172457722
INFO     2012-10-02 10:07:37,902 dev_appserver.py:3056] "GET /_ah/admin/datastore HTTP/1.1" 200 -
INFO     2012-10-02 10:07:38,325 recording.py:673] Saved; key: __appstats__:058200, part: 42 bytes, full: 1694 bytes, overhead: 0.000 + 0.001; link: http://localhost:8080/_ah/stats/details?time=1349172458266
INFO     2012-10-02 10:07:38,350 dev_appserver.py:3056] "GET /_ah/admin/images/google.gif HTTP/1.1" 200 -
ERROR    2012-10-02 10:07:42,392 wsgi.py:203] 
Traceback (most recent call last):
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py", line 195, 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 239, 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 719, 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 1923, 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 719, 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 1787, 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 719, 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 1730, in LoadModuleRestricted
    description)
  File "/Users/coto/gae-boilerplate/main.py", line 25, in <module>
    import routes
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 719, 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 1923, 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 719, 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 1787, 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 719, 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 1730, in LoadModuleRestricted
    description)
  File "/Users/coto/gae-boilerplate/routes.py", line 8, in <module>
    from web import handlers
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 719, 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 1923, 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 719, 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 1787, 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 719, 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 1730, in LoadModuleRestricted
    description)
  File "/Users/coto/gae-boilerplate/web/handlers.py", line 13, in <module>
    from boilerplate.lib.basehandler import BaseHandler
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 719, 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 1923, 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 719, 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 1787, 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 719, 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 1730, in LoadModuleRestricted
    description)
  File "/Users/coto/gae-boilerplate/boilerplate/lib/basehandler.py", line 14, in <module>
    from boilerplate.lib import utils, i18n
  File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 719, 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 1923, 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 719, 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 1787, 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 719, 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 1730, in LoadModuleRestricted
    description)
  File "/Users/coto/gae-boilerplate/boilerplate/lib/utils.py", line 11, in <module>
    from Crypto.Cipher import AES
ImportError: No module named Crypto.Cipher
INFO     2012-10-02 10:07:42,467 dev_appserver.py:3056] "GET / HTTP/1.1" 500 -




Helge Tesdal

unread,
Oct 2, 2012, 6:35:10 AM10/2/12
to google-a...@googlegroups.com
Is Crypto available to the python that is running the SDK?

My experience is that Crypto works better than ever in SDK 1.7.2 with
the sandbox and import restrictions.
> --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-appengine/-/pnUBrY87ovoJ.
> To post to this group, send email to google-a...@googlegroups.com.
> To unsubscribe from this group, send email to
> google-appengi...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/google-appengine?hl=en.



--
Helge Tesdal
CTO - mCASH Norge AS
+47 815 10 150
http://mCA.SH

Anand Mistry

unread,
Oct 2, 2012, 6:39:19 AM10/2/12
to google-a...@googlegroups.com
You need to install PyCrypto yourself. Grab the tarball from https://www.dlitz.net/software/pycrypto/ and run setup.py. Unfortunately, installing PyCrypto using easy_install won't work with the dev_appserver on OSX.

Helge Tesdal

unread,
Oct 2, 2012, 7:01:24 AM10/2/12
to google-a...@googlegroups.com
On Tue, Oct 2, 2012 at 12:39 PM, Anand Mistry <ami...@google.com> wrote:
> You need to install PyCrypto yourself. Grab the tarball from
> https://www.dlitz.net/software/pycrypto/ and run setup.py. Unfortunately,
> installing PyCrypto using easy_install won't work with the dev_appserver on
> OSX.

Not even with 1.7.2?

Anand Mistry

unread,
Oct 2, 2012, 7:31:03 PM10/2/12
to google-a...@googlegroups.com
Yes. Last I checked, easy_install created a zip file when you install PyCrypto, which isn't compatible with our import hook.
Reply all
Reply to author
Forward
0 new messages