small tool for project config management
Project description
Simple configure management tool for python project.
YAML file and environment variable both supported.
Free software: BSD license
Documentation: https://p-config.readthedocs.io.
Install
$: pip install p_config --upgrade
Usage
Initialize a Config instance. You can add some default value here.
Load local file or environment value. Value with same key will be overridden.
Access config through the instance
(default) p_config ) ENV=UAT ipython
Python 3.9.1 (default,)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.20.0 -- An enhanced Interactive Python. Type '?' for help.
In [1]: from p_config import Config
In [2]: config = Config(ENV='SIT')
In [3]: config.ENV # default config defined at [2]
Out[3]: 'SIT'
In [4]: !cat demo.yaml
ENV: PRD
BROKER_URI: redis://
DB:
NAME: test
HOST: localhost
PORT: 3306
In [5]: config.load_yaml_file('demo.yaml')
In [6]: config.ENV # overridden by config in demo.yaml
Out[6]: 'PRD'
In [7]: config.DB # only support upper case
Out[7]: {'NAME': 'test', 'HOST': 'localhost', 'PORT': 3306}
In [8]: config.DB.HOST
Out[8]: 'localhost'
In [9]: config.load_env()
In [10]: config.ENV # overridden by config in demo.yaml
Out[10]: 'UAT'
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
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
p_config-1.4.0.tar.gz
(13.8 kB
view details)
Built Distribution
File details
Details for the file p_config-1.4.0.tar.gz
.
File metadata
- Download URL: p_config-1.4.0.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f71befc3e9eaea1799bdd37f3e5a3b09ab88bf53c1922a8ed9be5c344faf6a94 |
|
MD5 | 20f9daa5efd09baa53111d8f1cf3995d |
|
BLAKE2b-256 | 8ac5b72032da87215db25cd3d1df6ae07d81def0dbd771522a4644dd131cd248 |
File details
Details for the file p_config-1.4.0-py3-none-any.whl
.
File metadata
- Download URL: p_config-1.4.0-py3-none-any.whl
- Upload date:
- Size: 7.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0aacdbd5812f44e3c46ac5a6c261ab9271a694e84ae664f901338bd012bfee2b |
|
MD5 | d0f9dd07299cba966569b0980e093372 |
|
BLAKE2b-256 | 6a31551af1d24bb674fb1f680fe4e323af87e41c1cae63c3893c4b7d06f625eb |