Skip to main content

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


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)

Uploaded Source

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

Hashes for py-viper-0.1.0.dev5.tar.gz
Algorithm Hash digest
SHA256 b485c6f3b76bf41b02441c700764dace29600310792523334312435cdb1c726f
MD5 c6624ba7264edbe4792493cd9d58c5c8
BLAKE2b-256 158671bf66f4e71bfa754889651c7bf9b38d8c728fcbb3fd8654bd300a33448e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page