On Mon, Aug 10, 2009 at 1:55 PM, Brian O'Connor<gatzby...@gmail.com> wrote: > I've read a few threads about the state of pylons on google app engine, and > that parts of it work and parts don't. Doing a quick google on the subject > reveals a few tutorials that use appengine-monkey to accomplish setting up > the framework, however it appears as if that is no longer necessary. > > I was wondering if there was an up to date howto on the subject of running a > pylons app on GAE? Or if anyone has any experiences with the matter and > could shed some light?
I was doing research on this for a book I was writing, but I got so frustrated at the limitations and bugs and sudden changes in App Engine that I gave up. I turned the book over to another author, and I don't know whether he's going to keep the Pylons focus. What's left is a howto I wrote re installing Pylons with Appengine-Monkey/appengine-boot. http://wiki.pylonshq.com/display/pylonscookbook/Creating+a+Pylons+application+for+Google+App+Engine Since then, several things have happened: 1) Ian wrote an appengine_homedir script in Appengine-Monkey, with a better application structure. 2) Google added some of the Appengine-Monkey code to App Engine, so now it runs Setuptools without the monkey. 3) Google raised the file limit from 1000 to 3000. Pylons and a default app is around 950 files, so this gives more breathing room without zipping packages. 4) Beaker worked with Datastore, then it didn't. but I think it's working now. 5) The interactive traceback was working in the development environment, then somebody said it wasn't. I haven't figured out what causes it to work in some cases but not others. The best advice now is to use the appengine_homedir script. The howto is still useful but you'll have to make allowances for the differences between appengine_boot and appengine_homedir. You can disable the monkey by commenting out the "import appengine_monkey" line in paste-deploy.py . It needs more testing before the howto can be updated. In the farther future I'd like to see: - Extract appengine_homedir to a separate distribution without the monkey. - Make a simple tarball installer containing Pylons, the dependencies, and appengine_homedir. - A tarball containing a default application would be ideal, but I'm not sure it's feasable given Virtualenv's symlinks to the system Python, which are different on each system. - Better distribution of the uploadable and non-uploadable files. The appengine_homedir structure helps by having an application subdirectory which is uploaded, and the bin scripts are installed outside that. But Nose gets installed inside even though it's not useful on the server. Setuptools doesn't know about inside vs outside; it treats all Pylons dependencies identically. You can get around this with command-line options, but that would complicate the howto or have to be built into the installer. - Better installation for simplejson. The C speedups are not useful on the server, but it's hard to get Setuptools to not try to compile it anyway, and to fail on some systems. - Use pip. This has a more enlightened installer, and it can zip and unzip installed packages. But given that you have to easy_install pip, it would add a complication to the howto, which is especially cumbersome to explain to new Python users. And given that you never install packages on the server anyway, perhaps it's easier to just use easy_install. But somebody else will have to do these. -- Mike Orr <sluggos...@gmail.com> --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "pylons-discuss" group. To post to this group, send email to pylons-discuss@googlegroups.com To unsubscribe from this group, send email to pylons-discuss+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/pylons-discuss?hl=en -~----------~----~----~----~------~----~------~--~---