Skip to main content

A dynamic settings management solution using ETCD

Project description

https://secure.travis-ci.org/kpn-digital/etcd_config.svg?branch=master https://img.shields.io/codecov/c/github/kpn-digital/etcd_config/master.svg https://img.shields.io/pypi/v/etcd_config.svg https://readthedocs.org/projects/etcd_config/badge/?version=latest

Features

This library allows Python applications load configuration from ETCD:

  • Environment dependent values

  • Values in different config sets, identified by name

Backends

  • ETCD 2.2.1

Installation

$ pip install etcd-config

Usage

import etcd_config.loader
config = etcd_config.loader.get_overwrites(
    env='test',
    dev_params='main.params',
    etcd_details=dict(
        protocol=getattr(params, 'ETCD_PROTOCOL', 'http'),
        host=getattr(params, 'ETCD_HOST', 'localhost'),
        port=getattr(params, 'ETCD_PORT', 2379),
        username=getattr(params, 'ETCD_USERNAME', None),
        password=getattr(params, 'ETCD_PASSWORD', None),
        prefix='/config/your_project'
    )
)

Supported by

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