read configuration files, conf.d style
Project description
read configuration files, conf.d style
Requirements
Python 2.6+
Installation
Using PIP:
From Github:
pip install git+git://github.com/josegonzalez/conf_d.git#egg=conf_d
From PyPI:
pip install conf_d==0.0.1
Usage
usage:
# in your /etc/derp/conf file [derp] no: sleep til: brooklyn [herp] sleep: 1 wait: 5.0 timeout: seventy # From your fictional derp module from conf_d import Configuration def digitize(config): for key in config: if not config[key].isdigit(): try: config[key] = float(config[key]) except ValueError: pass else: try: config[key] = int(config[key]) except ValueError: pass return config # All defaults must be strings conf = Configuration( name="derp", path="/etc/derp/conf", main_defaults={ "no": "one", "expected": "the spanish inquisition", "cats": "1", }, section_parser=digitize ) what_not_to_do = conf.get(section='derp', key='no', default="jumping") # "sleep" until_when = conf.get(section='derp', key='til') # "brooklyn" cats = conf.get(section='derp', key='cats') # "1" dogs = conf.get(section='derp', key='dogs') # None sleep = conf.get(section='herp', key='sleep') # 1 wait = conf.get(section='herp', key='wait') # 5.0 timeout = conf.get(section='herp', key='timeout') # "seventy" section_exists = conf.has(section='derp') # True section_exists = conf.has(section='derp', key='no') # True raw_data = conf.raw() # { # 'sections': { # 'herp': { # 'sleep': 1, # 'wait': 5.0, # 'timeout': 'seventy' # } # }, # 'derp': { # 'expected': 'the spanish inquisition', # 'til': 'brooklyn', # 'cats': '1', # 'no': 'sleep' # } # }
Changelog
0.0.1 (2013-04-13)
Initial commit
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
conf_d-0.0.1.tar.gz
(4.1 kB
view details)
File details
Details for the file conf_d-0.0.1.tar.gz
.
File metadata
- Download URL: conf_d-0.0.1.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ade4ad94f3ac62f7680da983075770cba40acc94967bf00fe974bf991cf633d8 |
|
MD5 | 9234edc830599dc3022ee9c6f31ebc9b |
|
BLAKE2b-256 | 16d37872bca43c1ad3ac32346d1935d742d91d138c06f5e5b33620bb785b7b6d |