in reply to Config File Shuffle

Gantry::Conf does many of the things you want. But, it doesn't deal with command line overrides of any kind. Nor does it provide support for 'A config file could remove itself'. (I have to admit that I can't imagine a use for that.)

Gantry::Conf does let you specify conf in a single place for lots of apps or in lots of places for a single app. It allows you to share conf across apps (or not, of course). It allows for precedence based overrides and many other things. It can even fetch conf via https (or http if you don't have to worry about security so much). That allows multiple servers to share conf. It also allows separate instances of the same app to share their common conf while keeping some of their conf instance specific. Further, it's extensible, so you can write backends to fish conf from your favorite data store (ours tends to be flat files in Config::General format).

<disclaimer>Gantry::Conf was conceived by my boss and written by him and others in our shop, including me.</disclaimer>

Phil

Replies are listed 'Best First'.
Re^2: Config File Shuffle
by pileofrogs (Priest) on Apr 24, 2006 at 18:52 UTC

    Sweet!

    I'll check it out!

    For an example of when a file might want to remove itself, think of xinitrc, or yum and the /etc/yum.repos directory. Each has a batch of config files with a value for "use me" or "don't use me."

    Thanks!
    --Pileofrogs