Fetching latest commit…
Cannot retrieve the latest commit at this time
|Failed to load latest commit information.|
========= bosnowsgi ========= bosnowsgi is a simple script to deal with the cruft involved in managing WSGI processes with CherryPy's WSGI server. bosnowsgi offers multiple ways to configure its usage giving complete control over the configuration. Dependancies ============ * `CherryPy WSGI server`_ 3.1.0 * `PyYaml`_ 3.05 The versions numbers are not strict. They are simply the versions that were used during testing. .. _CherryPy WSGI server: http://www.cherrypy.org/browser/tags/cherrypy-3.1.0/cherrypy/wsgiserver/__init__.py?format=raw .. _PyYaml: http://pyyaml.org/wiki/PyYAML Installation ============ Simply drop ``bosnowsgi.py`` on your ``PATH`` and ``chmod +x`` it. Configuration ============= Configuration of bosnowsgi is where its real power shines. You must create yourself ``~/.wsgirc`` file. The configuration format is YAML and has two top-level keys, ``pid-path`` and ``processes``. Here is a quick sample:: pid-path: "~/run" servers: oebfare: dispatcher: "trac.web.main.dispatch_request" trac: dispatcher: "trac.web.main.dispatch_request" Global Parameters ----------------- pid-path ~~~~~~~~ The path where bosnowsgi should store the PID files for the processes it spawns off. servers ~~~~~~~ A container for each process and their configuration. Process Parameters ------------------ dispatcher ~~~~~~~~~~ This key is required. Its value is a Python module path to the WSGI callable used to dispatch the request. host ~~~~ Default: ``127.0.0.1`` The host on which the process should bind on. port ~~~~ Default: ``None`` The port on which the process should listen to. ``port`` is optional at the configuration file level. However, is required to run the server. If not specified in the configuration, it must be given to the command-line. Usage ===== With the configuration all setup you are ready to manage WSGI processes. To start the ``oebfare`` process execute:: bosnowsgi.py oebfare start -p 9001 Parameters passed on the command-line will override any configuration of the same kind.