Python viper
Project description
Python Viper
This project was inspired by spf13/viper.
Installation
pip install py-viper
Usage
import tempfile
import viper
yaml_example = b'''
hello:
name: foo
'''
class Hello:
name = ''
class Config:
hello = Hello
if __name__ == '__main__':
with tempfile.NamedTemporaryFile(suffix='.yaml') as temp:
temp.write(yaml_example)
temp.seek(0)
viper.set_config_path(temp.name)
viper.read_config()
assert viper.get('hello.name') == 'foo'
conf = Config()
viper.unmarshal(conf)
assert conf.hello.name == 'foo'
You can also use remote config instead of local config:
viper.set_config_type('yml')
viper.set_remote_provider('consul', '127.0.0.1', 8500, 'hello')
viper.read_remote_config()
Note:
- The config type only supports yaml or yml.
- The backend of remote config only supports consul.
TODO
- Read remote config
- Unmarshal config
- Add support for JSON
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
py-viper-0.1.0.dev5.tar.gz
(4.1 kB
view details)
File details
Details for the file py-viper-0.1.0.dev5.tar.gz
.
File metadata
- Download URL: py-viper-0.1.0.dev5.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2.post20191203 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b485c6f3b76bf41b02441c700764dace29600310792523334312435cdb1c726f |
|
MD5 | c6624ba7264edbe4792493cd9d58c5c8 |
|
BLAKE2b-256 | 158671bf66f4e71bfa754889651c7bf9b38d8c728fcbb3fd8654bd300a33448e |