Skip to main content

A multi-layered approach to settings

Project description

This provides a simple way to handle settings in a multi-layer fashion, which allows you to composing settings by add in different configuration components. It will read from files, objects, and environment variables.

Example Usage:

from flapjack_stack import FlapjackStack
settings = FlapjackStack()
settings.add_layer_from_file('/path/to/our_file')
settings.add_layer(thing)
settings.add_layer_from_env()

Which will create a new FlapjackStack instance, then read settings in from a file, then the thing object and finally from the environment. This would result in a group of settings like:

Layer

Source

3

loaded from env

2

loaded from thing object

1

loaded from ‘/path/to/our_file’

Base

Empty created during init

And settings would be returned from the top to the bottom. For example if we had a setting called COOKIES in both the thing object and our_file, the one from the thing object would be returned.

NOTE add_layer_from_env() only searchs for environment variables already in the settings object regardless of their layer that are prefixed with an FJS_ at the moment it is called. So if you add the variable later, it will not be seen.

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

flapjack_stack-1.0.0.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

flapjack_stack-1.0.0-py2.py3-none-any.whl (5.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file flapjack_stack-1.0.0.tar.gz.

File metadata

File hashes

Hashes for flapjack_stack-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a460166b3b8b71e584ea7efd046bc2c445de70f8290ea75b068e31741437213c
MD5 f178d3c49b61d7cfac436fdcd8810a8c
BLAKE2b-256 152a527bc85c26082489dae50546414e0e3d541850c3399188c8443469480ea7

See more details on using hashes here.

File details

Details for the file flapjack_stack-1.0.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for flapjack_stack-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e4244164da5b525accbe29184923f2b1f6e1179cdcc48e9dc952a192e8efb191
MD5 c18efc35e23c2961893078af1d4114a3
BLAKE2b-256 50d4bb9adf03289abeccfbdd81c9a94cc53cf31ba835e1eca5c4276fc1981c27

See more details on using hashes here.

Supported by

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