Skip to main content

Python configuration manager.

Project description

https://travis-ci.org/singulared/conflow.svg?branch=master https://codecov.io/gh/singulared/conflow/branch/master/graph/badge.svg

Project in early beta. Work in progress!

Conflow organizes layered configurations for Python applications. Conflow allows you to use default settings and extend or override it via merging settings from different sources: - Python dictionaries - Files: yaml, json, ini - Environment variables

Quickstart

pip install conflow

Usage

import os
from conflow import Config, from_env

DEFAULT_SETTINGS = {
    'db': {
        'master': {
            'host': 'localhost',
            'port': 5432,
        },
        'slave': {
            'host': 'localhost',
            'port': 5433,
        }
    }
}

config = Config().merge(DEFAULT_SETTINGS)
assert config.db.master.host() == 'localhost'

os.environ['APP_DB__MASTER__HOST'] = 'remote_host'
env_settings = from_env('APP')

config = Config().merge(DEFAULT_SETTINGS).merge(env_settings)
assert config.db.master.host() == 'remote_host'

Motivation

If you are tired of making local, test, stage and production profiles in each project, then Conflow is for you. Conflow allows you to fetch and merge configs from different places - yaml files, environment variables etc.

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

conflow-0.0.2.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

conflow-0.0.2-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file conflow-0.0.2.tar.gz.

File metadata

  • Download URL: conflow-0.0.2.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.15 CPython/3.7.4 Darwin/19.2.0

File hashes

Hashes for conflow-0.0.2.tar.gz
Algorithm Hash digest
SHA256 6073f3d13ebabe0848a61f0889d6fe29ccc663c36d759776787bfa314f125a4d
MD5 9285fd24bff64c4ea4869329b803ddeb
BLAKE2b-256 37c853f5889ae86ac42d3b05ffdbb77fac72f9dd9e5c001057f0f07a645f9a7d

See more details on using hashes here.

File details

Details for the file conflow-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: conflow-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.15 CPython/3.7.4 Darwin/19.2.0

File hashes

Hashes for conflow-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8705f804523ad0fc6ec87f23f3f607024b7488d08258e7a9b719be580b635fc0
MD5 093111d742c1ec5d418600dca017753d
BLAKE2b-256 b435e7b6518ce5c6dfd0377e2588160a218ef55558fff7e1f9fa134bc035ba9f

See more details on using hashes here.

Supported by

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