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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file flapjack_stack-1.0.0.tar.gz
.
File metadata
- Download URL: flapjack_stack-1.0.0.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a460166b3b8b71e584ea7efd046bc2c445de70f8290ea75b068e31741437213c |
|
MD5 | f178d3c49b61d7cfac436fdcd8810a8c |
|
BLAKE2b-256 | 152a527bc85c26082489dae50546414e0e3d541850c3399188c8443469480ea7 |
File details
Details for the file flapjack_stack-1.0.0-py2.py3-none-any.whl
.
File metadata
- Download URL: flapjack_stack-1.0.0-py2.py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e4244164da5b525accbe29184923f2b1f6e1179cdcc48e9dc952a192e8efb191 |
|
MD5 | c18efc35e23c2961893078af1d4114a3 |
|
BLAKE2b-256 | 50d4bb9adf03289abeccfbdd81c9a94cc53cf31ba835e1eca5c4276fc1981c27 |