Python Application Configuration.
Project description
Python Application Configuration. Py-config organizes hierarchical configurations for your app deployments.
Usage
Installation
pip install py-app-config
Best Practice
Firstly, you should have a config folder under the codebase of your application, like this:
. ├── config │ ├── __init__.py │ ├── default.json │ ├── development.json │ ├── production.json │ └── test.json .
Secondly, set environment variable PY_ENV to one of the names of JOSN files in the config folder, and it defaults to be development.
In your __init__.py under config folder, these codes can be used:
import os from py_config import set_config_dir, get_config config_dir = os.path.abspath(os.path.dirname(__file__)) set_config_dir(config_dir) config = get_config()
Then, you can use from config import config to import your app config in any other places in you codebase.
The final config would merge default.json and <PY_ENV>.json. See dict-recursive-update for the recursive update rules.
APIs
# Set the config directory path set_config_dir( config_dir=None # Directory path of `config` folder ) # Get final config according to the `config_dir`. # It should be executed every time after a new `config_dir` is set. get_config()
Relatives
License
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.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size py_app_config-1.0.0-py3-none-any.whl (4.9 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Filename, size py-app-config-1.0.0.tar.gz (2.7 kB) | File type Source | Python version None | Upload date | Hashes View |
Hashes for py_app_config-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21678da979ee5e42703f175b53df73b4f807a1923dfb2f1f692b653b79f2bd25 |
|
MD5 | e663f2b687d049499e75bbaee2fd7312 |
|
BLAKE2-256 | 1a9612d273ab1e62aae7ccc54a6d329188ced6dffac44bd9ca4dec1930219958 |