User Tools

Site Tools


metamod:better_config

On 12/22/2010 03:26 PM, Øystein Torget wrote:

Det som jeg kunne ønsket var en type konfigurasjon à la Apache, hvor du
har en master konfigurasjonsfil som inneholder defaults og ting som
aldri endrer seg, og så lastes det etterpå inn site-spesifikke filer med
direktiver som overstyrer de som ble definert i hovedfilen. På den
måten ville filene for hver enkelt applikasjon bli redusert ganske
dramatisk.


Jeg støtter den. Det hadde vært veldig praktisk. Så vidt jeg husker fant Geir også en CPAN modul som støtter mer eller mindre det vi har fra før + denne muligheten. Var det Config::General eller noe slikt?

Jepp. Config::General bruker samme syntax og kan lese Apache-config 100%. Det innebærer at den bl.a. støtter følgende vi mangler i dag:

  • seksjoner og hierarkier, slik at ting blir gruppert logisk
    • blir lettere å diffe/finne igjen direktiver
  • overriding, så man kan sette defaults som overstyres per app
  • inkludering av andre filer, så hver app/site kun trenger å spesifisere det som er spesielt for denne
  • mulighet for å deklarere hash-strukturer som verdier, ikke bare strenger
    • (kjekt for coastlines i WMS, hvor jeg trenger å spesifisere ett kart for hver projeksjon)
  • sannsynligvis mulighet for en slags validering, selv om det ikke finnes noe schemaspråk

I tillegg har den som i dag here-documents, deklarering av variable som kan brukes i senere direktiver (à la [==xxx==], dog riktignok one-pass) etc.

Dette kan naturligvis ikke brukes fra annet enn Perl, men når PHP-delen er faset ut burde det være mulig å lage et Perlscript som trekker ut nødvendig info og genererer en defaults-fil som kan sources fra shellscripts.

http://search.cpan.org/~tlinden/Config-General-2.50/General.pm

~~DISCUSSIONS~~

metamod/better_config.txt · Last modified: 2011-05-24 08:02:36 by geira