Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

easy to define and reference config options

Project Description

Introduction

econf make it easy to define config options and reference them. The options can be provided through command line or config file.

Install

$ pip install http://github.com/wangst321/econf.git

How to Use

define options

First, import econf

from econf import *

For default options, that belong to ‘default’ section:

from econf import BaseConf

class DefaultConf(BaseConf):
    host = StrOpt(default='0.0.0.0', cmdline=True,
                  help='ip address')
    port = IntOpt(default=9090, cmdline=True,
                  help='tcp port')

For options belong to other section:

class ZKConf(BaseConf):
    __section__ = 'zk'

    hosts = StrOpt(
        required=True,
        help='list of zookeeper ip:port pair. i.e. localhost:2181')
    max_retry = IntOpt(
        default=3,
        help='number of tries before giving up connecting')

use options in your code

There are two ways to reference an option. First, use the specific Conf Class:

host, port = DefaultConf.host, DefaultConf.port

Second, use the general CONF:

host, port = CONF.host, CONF.port
zk_hosts = CONF.zk.hosts

parse cli options and config file

Note

When the code executes, this step should always be in front of those statements, which reference options.

If a default config is supplied:

from econf import CONF
CONF('path/to/your/default.conf')

or,

from econf import CONF
CONF()

Usually, this code is executed just before your service gonna start.

def run():
    from econf import CONF
    CONF()

    my_service.init(CONF.host, CONF.port, ...)
    my_service.start()
Release History

Release History

This version
History Node

0.1.4

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
econf-0.1.4.tar.gz (5.4 kB) Copy SHA256 Checksum SHA256 Source Dec 18, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting