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

Uploaded Source

Built Distribution

p_config-1.3.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: p_config-1.3.0.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for p_config-1.3.0.tar.gz
Algorithm Hash digest
SHA256 809968f8fecc8bc9b8b140be24db87f40d55e4ce6ba1ed8a410b0512e2cf761c
MD5 2065d5dbf107e19a39eed41ea9de0b57
BLAKE2b-256 85b07d6d9647c7141a4248614945f3153bb7834e9bf26b015e6f8bcab8aa5bed

See more details on using hashes here.

File details

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

File metadata

  • Download URL: p_config-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for p_config-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 47930bfc4c2d35bbe35eca7653436e01d12f2c20d183231ad19e8fa10842db8d
MD5 a98af637d34a5dbb5de9a0477c66905f
BLAKE2b-256 4d0be29b19053f5567a054ed13b275d608e9aa70a39de90b379c3ea9a3bb92da

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