This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

About

Greins is a Gunicorn application which makes it easy to configure and manage any number of WSGI apps in one server daemon. It aims to simplify the process of setting up any number of system-wide Gunicorn daemons.

Installation

Greins requires a working version of Gunicorn. It is recommended to read and understand the Gunicorn installation instructions before using Greins.

Install from sources:

$ python setup.py install

Install as an rpm:

$ make rpm

Whatever was here before was wrong. There is no place in PyPI for Greins. The most useful aspects of Greins are in the packaging, since it aims to facilitate deployment of Gunicorn and adds no particular functionality itself.

There’s an init script in etc/init aims to be LSB-compliant and packaging for other distributions and systems is an ongoing effort.

Those wishing to deploy Greins for their own infrastructure are encouraged to contribute to the development.

Basic Usage

Greins installs one command line script invoked as greins.

greins

Options are the same as for Gunicorn with one exception: the single APP_MODULE argument is replaced by APP_DIR, a directory containing python source files as described in the following section.

Application Configuration

Applications should be configured by placing a python source file in the configuration directory. This file should populate a dictionary in the global scope called mounts which maps address prefixes (or ‘mount points’) to WSGI handler functions.

These files are evaluated just like a Gunicorn config file. Server hooks are valid in these configuration files and work as in Gunicorn. Other options, such as logging and worker configuration, are ignored and should be configured globally for the Greins application.

As a convenience, a file name myapp which does not define any mounts will try to import myapp:application and mount it underneath the path /myapp.

It should be possible to write an application for Gunicorn and then place a Gunicorn configuration file inside the configuration directory for Greins to begin using it within Greins immediately, provided that the config file name matches a module in the python path which exports application as a WSGI callable.

Examples

The examples directory runs a single greins application from the file test.py which demonstrates loading several routes as well as using the gunicorn server hooks. To run the examples, launch greins from the directory above examples with:

$ greins examples

The greins command accepts gunicorn options. For example:

$ greins -kgevent -b0.0.0.0:8080 examples

LICENSE

Greins is released under the MIT License. See the LICENSE file for more details.

Release History

Release History

0.2.1

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.2.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
greins-0.2.1.linux-x86_64.tar.gz (11.1 kB) Copy SHA256 Checksum SHA256 any Dumb Binary Oct 19, 2011

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development 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