Skip to content

Instantly share code, notes, and snippets.

@joar
Last active December 11, 2015 01:58
Show Gist options
  • Save joar/4526845 to your computer and use it in GitHub Desktop.
Save joar/4526845 to your computer and use it in GitHub Desktop.
Alternative GNU MediaGoblin app runners
# - Static doesn't work (set it up elsewhere or build a handler)
# - Beaker works
from gevent import wsgi
from mediagoblin.app import MediaGoblinApp
from beaker.middleware import SessionMiddleware
if __name__ == '__main__':
mg_app = MediaGoblinApp('mediagoblin_local.ini')
beaker_app = SessionMiddleware(mg_app, {
'session.data_dir': 'user_dev/beaker/sessions/data',
'session.lock_dir': 'user_dev/beaker/sessions/lock'})
app = beaker_app
wsgi.WSGIServer(('', 8181), app).serve_forever()
# - Beaker (sessions) doesn't work
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop
import tornado.wsgi
import tornado.web
from mediagoblin.app import MediaGoblinApp
if __name__ == '__main__':
app = MediaGoblinApp('mediagoblin_local.ini')
wsgi_app = tornado.wsgi.WSGIContainer(app)
tornado_app = tornado.web.Application([
('/mgoblin_media/(.*)', tornado.web.StaticFileHandler,
{'path': 'user_dev/media/public'}),
('/mgoblin_static/(.*)', tornado.web.StaticFileHandler,
{'path': 'mediagoblin/static'}),
('/theme_static/(.*)', tornado.web.StaticFileHandler,
{'path': 'user_dev/theme_static'}),
('.*', tornado.web.FallbackHandler, dict(fallback=wsgi_app))])
server = HTTPServer(tornado_app)
server.listen(8181)
IOLoop.instance().start()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment