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.
Source Distribution
Built Distribution
Hashes for py_app_config-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21678da979ee5e42703f175b53df73b4f807a1923dfb2f1f692b653b79f2bd25 |
|
MD5 | e663f2b687d049499e75bbaee2fd7312 |
|
BLAKE2b-256 | 1a9612d273ab1e62aae7ccc54a6d329188ced6dffac44bd9ca4dec1930219958 |