Because WSGI is awesome. But more importantly a lot of Python tools already assume WSGI (flask, werkzeug, other middleware, etc) and people are a lot more familiar with WSGI than with CGI for python.
Version: unspecified
Severity: normal
Because WSGI is awesome. But more importantly a lot of Python tools already assume WSGI (flask, werkzeug, other middleware, etc) and people are a lot more familiar with WSGI than with CGI for python.
Version: unspecified
Severity: normal
mod_wsgi (via https://code.google.com/p/modwsgi/) is probably the easiest way to do this.
Also see http://www.python.org/dev/peps/pep-0333/ for additional background info on WSGI
I can't do this major change on tools without discussing this with Coren. But I can install this to bots project for now
I've found a fairly reasonable way of doing it. Will implement a test version next week.
Update from IRC: mod_wsgi is no go. However, Coren is currently working on a uwsgi emperor/tyrant based server that should be much, much better than mod_wsgi :)
Another update: Tyrant is also a no go, but the Dynamic HTTP Proxy I built should be able to eventually solve this
I would really appreciate having WSGI support on Tool Labs. Due to a bug in werkzeug [0], I am not able to deploy a tool using flask at the moment.
Gerrit Patch Uploader is using newweb with flup.server.fcgi as wsgi host. For details, please see the lighttpd conf at
https://github.com/valhallasw/gerrit-patch-uploader/blob/master/lighttpd.conf
and the fcgi script at
https://github.com/valhallasw/gerrit-patch-uploader/blob/master/app.fcgi
(lighttpd.conf should be in your project's home directory, and requests to that directory will then be served by your own lighttpd -- see https://wikitech.wikimedia.org/wiki/Nova_Resource:Tools/Help/NewWeb )
Update on the Dynamic HTTP Proxy: The features required to make it work for toollabs has been built and merged. Only waiting on Coren to update portgrabber / portgranter so that it supports the new protocol.
*Worst* case scenario is that this happens when we move to eqiad (since the current webproxy setup isn't puppetized :D). I hope to have it running in production in a couple weeks though.
Petr: This ticket has been assigned to you and in ASSIGNED state for more than 12 months. Do you plan to work on this, or could you reset to NEW status and/or default assignee, if not?
My understanding of Merlijn's comment #9 is that NewWeb supports this, and with no Apaches in eqiad, all tools can use this, so closing this bug as fixed.