Skip to main content

A loader implementing the PasteDeploy syntax to be used by plaster.

Project description

https://img.shields.io/pypi/v/plaster_pastedeploy.svg https://img.shields.io/travis/Pylons/plaster_pastedeploy/master.svg

plaster_pastedeploy is a plaster plugin that provides a plaster.Loader that can parse ini files according to the standard set by PasteDeploy. It supports the wsgi plaster protocol, implementing the plaster.protocols.IWSGIProtocol interface.

Usage

Applications should use plaster_pastedeploy to load settings from named sections in a configuration source (usually a file).

  • Please look at the documentation for plaster on how to integrate this loader into your application.

  • Please look at the documentation for PasteDeploy on the specifics of the supported INI file format.

Most applications will want to use plaster.get_loader(uri, protocols=['wsgi']) to get this loader. It then exposes get_wsgi_app, get_wsgi_app_settings, get_wsgi_filter and get_wsgi_server.

import plaster

loader = plaster.get_loader('development.ini', protocols=['wsgi'])
# to get any section out of the config file
settings = loader.get_settings('app:main')

# to get settings for a WSGI app
app_config = loader.get_wsgi_app_settings() # defaults to main

# to get an actual WSGI app
app = loader.get_wsgi_app() # defaults to main

# to get a filter and compose it with an app
filter = loader.get_wsgi_filter('filt')
app = filter(app)

# to get a WSGI server
server = loader.get_wsgi_server() # defaults to main

# to start the WSGI server
server(app)

Any plaster.PlasterURL options are forwarded as defaults to the loader. Some examples are below:

  • development.ini#myapp

  • development.ini?http_port=8080#main

  • pastedeploy+ini:///path/to/development.ini

  • pastedeploy+ini://development.ini#foo

  • egg:MyApp?debug=false#foo

0.3.2 (2017-07-01)

0.3.1 (2017-06-02)

  • Recognize the pastedeploy+egg scheme as an egg type.

0.3 (2017-06-02)

0.2.1 (2017-03-29)

  • Fix a bug in 0.2 in which an exception was raised for an invalid section if the a non-config-file-based protocol was used.

0.2 (2017-03-29)

  • No longer raise plaster.NoSectionError exceptions. Empty dictionaries are returned for missing sections and a user should check get_sections for the list of valid sections.

0.1 (2017-03-27)

  • Initial release.

Project details


Download files

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

Source Distribution

plaster_pastedeploy-0.3.2.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plaster_pastedeploy-0.3.2-py2.py3-none-any.whl (9.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file plaster_pastedeploy-0.3.2.tar.gz.

File metadata

File hashes

Hashes for plaster_pastedeploy-0.3.2.tar.gz
Algorithm Hash digest
SHA256 d0d445c38253b2fbf720a5171e815206effb2650f49b390fec41a9ecf14be881
MD5 507f15c1d5f8f26771e6f83e49426ad9
BLAKE2b-256 0c1ed6b3377e3c5577d874e2f8b8fc5440d265ae090df21f18c64f4893054b24

See more details on using hashes here.

File details

Details for the file plaster_pastedeploy-0.3.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for plaster_pastedeploy-0.3.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 52d3062a4cf65e854136863601f673860032d3e8aa406503d01dfa3b9c38ad92
MD5 0105fec03846857af0ed94ecb8a64444
BLAKE2b-256 ff3b1b0a398a8c958464f2525ba6d1de8633e0ffda3fbb105b4a48e30ea46bc1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page