Skip to main content

small tool for project config management

Project description

Simple project config for Python.

You can read configuration from environ or local file with it.

Install

$: pip install p_config

Usuage

Suppose there are some config files.

# filename: default.yml
server:
    port: 80
    hostname: localhost
# filename: override.yml
server:
    port: 443
    hostname: localhost
    backends:
      - 127.0.0.1:80

You can read configuration via this way

$: env SERVER.PORT=8080 ipython
Python 3.6.9 (default, Nov  7 2019, 10:44:02)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.13.0 -- An enhanced Interactive Python. Type '?' for help.\

In [1]: from p_config import Config

In [2]: config = Config('default.yml')

In [3]: config['SERVER.PORT']
Out[3]: 80

In [4]: config['SERVER.HOSTNAME']
Out[4]: 'localhost'

In [5]: config.load('override.yml')  # update configuration via local file

In [6]: config['SERVER.PORT']
Out[6]: 443

In [7]: config['SERVER.BACKENDS']
Out[7]: ['127.0.0.1:8080']

In [8]: config.load_env()  # update configuration via environ

In [9]: config['SERVER.PORT']
Out[9]: '8080'

In [10]: config.get('SERVER.PORT')
Out[10]: '8080'

In [11]: config.get('NONE_EXIST')
Out[11]: None

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.2.0.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

p_config-1.2.0-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file p_config-1.2.0.tar.gz.

File metadata

  • Download URL: p_config-1.2.0.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.55.2 CPython/3.8.5

File hashes

Hashes for p_config-1.2.0.tar.gz
Algorithm Hash digest
SHA256 16cf899bc5d06a85990b95f3f0a3fe51f7da3df68d44580488e2da97cdd5135d
MD5 43f0d3d333a7c826b34eda03f8456be0
BLAKE2b-256 d16ae62d09bc6b16e2fb4b214775b68054f0c31cc1333c268bc67115c86fb71f

See more details on using hashes here.

File details

Details for the file p_config-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: p_config-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.55.2 CPython/3.8.5

File hashes

Hashes for p_config-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 05f28149bc9bf28b56e3a3b7d755b24001170eec4bbc93ad2315fcc4126a2873
MD5 186017ff308f10c6224ba61759c34238
BLAKE2b-256 abc365a2bd0ce0467b602eff0abfa7639a4dbd4deef2f5bf294b07c2f784bbde

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