Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

Paster command to use uwsgi as server for local development

Project description

pasteuwsgi

pasteuwsgi is a simple python paste (http://pythonpaste.org/) plugin which adds a command that serve the application for using uWSGI (http://projects.unbit.it/uwsgi/) integrated HTTP server. It can monitor python files and automatically reload uWSGI on file change. It’s focused for local development to easily test uWSGI specific features.

install

First, to use pasteuwsgi you need uWSGI installed, both sistem wide or in the virtualenv. Check the uWSGI documentation on how to install uWSGI (http://projects.unbit.it/uwsgi/wiki/Install). The simplest way is to install uwsgi in the virtualenv, using pip:

# pip install uwsgi

Then, you can install pasteuwsgi via pypi:

# pip install pasteuwsgi

Or, if you want the last unstable version, directly from bitbucket (again, using pip):

# pip install -e hg+https://bitbucket.org/gbagnoli/pasteuwsgi#egg=pasteuwsgi

Or you can clone the hg repo and then install:

# hg clone https://gbagnoli@bitbucket.org/gbagnoli/pasteuwsgi
# pip install -e ./

usage

Once installed, simply add this line to setup.py of your paste app:

uwsgi = pasteuwsgi.serve:ServeCommand

in the “[paste.paster_command]” section of the entry_point argument.

i.e. for a pylons-1.0 application:

entry_points="""
[paste.app_factory]
main = aybu.cms.config.middleware:make_app

[paste.app_install]
main = pylons.util:PylonsInstaller

[paste.paster_command]
uwsgi = pasteuwsgi.serve:ServeCommand
""",

You may need to re-run setuptools egg_info after adding the new entry_point:

# cd my-project
# python setup.py egg_info

options

--address Override the http server listening address.
--port Override the http server listening port.
--reload Setup a monitor (using pyinotify) to watch application code to reload on changes. It also monitors code installed in the virtualenv.
--uwsgi Pass additional options to uWSGI directly. Remember that you neeed to wrap uWSGI options with quotes.
--plugins Load uWSGI plugins (for uWSGI >= 0.9.7)

examples

To simply run it as you did with paster serve:

paster uwsgi development.ini --reload

You can add uwsgi options using the -w switch

# run with 2 workers with two threads each
paster uwsgi development.ini --reload -w "-workers 2 --threads 2"

You can even add common options (such the threads or the process one, or others) to a [uwsgi] section inside the paste ini (development.ini in the above example):

[...]
[uwsgi]
threads = 2
workers = 2

This works as pasteuwsgi passes –ini option to uwsgi with the same ini it uses.

Project details


Release history Release notifications

This version
History Node

0.1.8

History Node

0.1.7

History Node

0.1.6

History Node

0.1.5

History Node

0.1.4

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
pasteuwsgi-0.1.8.tar.gz (5.6 kB) Copy SHA256 hash SHA256 Source None Jul 15, 2011

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page