Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Simplified WSGI process management

Project Description

snow is a simple script to deal with the cruft involved in managing WSGI processes with CherryPy’s WSGI server. snow offers multiple ways to configure its usage giving complete control over the configuration.

Dependancies

The versions numbers are not strict. They are simply the versions that were used during testing.

Installation

Install using pip:

pip install snow

Configuration

Configuration of snow 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 snow 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:

snow oebfare start -p 9001

Parameters passed on the command-line will override any configuration of the same kind.

Release History

Release History

This version
History Node

0.1-alpha

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting