bicop 1.0rc1
Read bind-style configuration files
Latest Version: 1.0rc2
Introduction
bicop is a python library to process ISC bind-style configuration files. These are nested structures that look like this:
datasource1 {
server "server1.your.domain";
username "client";
password "secret";
extra {
isolation "full";
};
};
tables {
"users";
"groups";
};
Parsing
Parsing is trivial using the ''parse'' method:
from bicop import parse
parse("/etc/bind/named.conf")
This returns a standard python dictionary with all data read from the file. Entries in the dictionary can be other dictionaries or lists.
Merging
A common need is to be able to support default values for configurations or to handle configuration at multiple levels with priorities, for example a uer configuration overriding entries from the system-wide configuration. To support this bicop has a utility method that can merge dictionaries. You can use it like this:
from bicop import parse
from bicop import merge
configuration=parse("/etc/application.conf")
userconfig=parse("/home/user/.application")
merge(configuration, userconfig, overwrite=True)
Easy access for nested dictionaries
Configuration files in this format can have deeply nested structures. Accessing those using standard python dictionaries is a slightly cumbersone. To make this a bit more pleasant on the eyes you can use the NestedDict wrapper:
from bicop import parse
from bicop import NestedDict
configuration=NestedDict(parse("/etc/application.conf"))
print "Your signature is: %s" % configuration["profiles/user/signature"]
| File | Type | Py Version | Uploaded on | Size | # downloads |
|---|---|---|---|---|---|
| bicop-1.0rc1-py2.4.egg (md5) | Python Egg | 2.4 | 2007-11-16 | 15KB | 903 |
| bicop-1.0rc1.tar.gz (md5) | Source | 2007-11-16 | 5KB | 592 | |
- Author: Wichert Akkerman - Simplon
- Keywords: configparser configuration parser ISC bind
- License: BSD
- Categories
- Package Index Owner: wichert
- DOAP record: bicop-1.0rc1.xml
