From 5e4ad62d4d5b8ecabf4aa01b6de918fc322b8292 Mon Sep 17 00:00:00 2001 From: Tiago Gomes Date: Wed, 4 Sep 2013 16:29:50 +0100 Subject: Allow to use flup as the backend server for bottle. lighttpd does not support WSGI, so we need to be able to run the server in FCGI mode. The flup package provides one. Running with the default bottle server is still useful for testing purposes. --- morph-cache-server | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/morph-cache-server b/morph-cache-server index d3e42c6..1c9a53d 100755 --- a/morph-cache-server +++ b/morph-cache-server @@ -26,7 +26,7 @@ import urllib2 import shutil from bottle import Bottle, request, response, run, static_file - +from flup.server.fcgi import WSGIServer from morphcacheserver.repocache import RepoCache @@ -61,6 +61,10 @@ class MorphCacheServer(cliapp.Application): 'cache directories are directly managed') self.settings.boolean(['enable-writes'], 'enable the write methods (fetch and delete)') + self.settings.boolean(['fcgi-server'], + 'runs a fcgi-server', + default=True) + def _fetch_artifact(self, url, filename): in_fh = None @@ -302,8 +306,12 @@ class MorphCacheServer(cliapp.Application): root = Bottle() root.mount(app, '/1.0') - - run(root, host='0.0.0.0', port=self.settings['port'], reloader=True) + + + if self.settings['fcgi-server']: + WSGIServer(root).run() + else: + run(root, host='0.0.0.0', port=self.settings['port'], reloader=True) def _unescape_parameter(self, param): return urllib.unquote(param) -- cgit v1.2.1