===========
ConfigView
===========

ConfigView is tool to visualize and manipulate (sets of hierarchal) config files.

http://bitbucket.org/schettino72/configview/


Intro
========

Lets take an example of a web application that is deployed into different sites using different config values. It is desirable to keep config items specific to a site in separate files. The application also uses different config values depending if it is used on development and production.

This gives the following usage of config files:

* site 1 dev -> base_config.ini, site1_config.ini
* site 2 dev -> base_config.ini, site2_config.ini
* site 3 dev -> base_config.ini, site3_config.ini
* site 1 production -> base_config.ini, site1_config.ini, production.ini
* ...

ConfigView is tool to help you visualize what are the actual values being used, and provide a "diff" between different sets.

see http://bitbucket.org/schettino72/configview/raw/tip/samples/sample.html for a sample output.

Usage
========

Pass config files in priority order. "+" is use to separate different sets.

$ confview base_config.ini site1_config.ini + base_config.ini site2_config.ini


Features
=========

 * handle hierarchical configs
 * diff of 2 or more config sets
 * [TODO] command line for "set" operations like difference, union...

supported config formats
----------------------------

* INI files (only __default__ is used - no support for config groups)
* plain python files

Install
============

$ python setup.py install

or use easy_install or pip


License
=========

MIT

Authors
==========

 * Eduardo Schettino (schettino72 at gmail dot com)
 * Balazs Tothfalussy (balazs.tothfalussy at gmail dot com)
