|
From: | nathan r. hruby |
Subject: | Re: Feature request: Ability to parse files with a custom parser |
Date: | Tue, 22 Feb 2005 12:07:13 -0500 (EST) |
On Tue, 22 Feb 2005, Knut Auvor Grythe wrote:
On Wed, Feb 16, 2005 at 01:24:40PM +0100, Knut Auvor Grythe wrote:What we would like to see, is an option in copy for using a custom parser, like so: copy: all:: /path/to/sshd_config.m4 dest=/etc/ssh/sshd_config parsecmd=/local/admin/bin/m4wrapIf we implemented this and submitted a patch, would it be accepted? We would really like this feature, but we do not wish to become dependent on local patches.
Chiming in late (and a newbie so everything I say could be wrong :) Could you not move much of the "if newer, then build" logic into a Makefile which then would call m4 as needed as the component parts are updated? If so then I think basically having a copy: section to fetch the m4 and config bits from a central place to a configroot, then a shellcommand: to run "make" in the directory which should regen all your files, and then another copy: to copy from the configroot to live locations might do it. I think the snippet would look something like this (again, newbie, so please don't try this on something that matters :) control: actionsequence = ( copy.fromrepo shellcommands copy shellcommands ) copy: fromrepo:: $(remoteconfigroot) dest=$(localconfigroot) server=$(server) define=genconf #blah tolive:: /etc/somefile dest=$(localconfigroot) define=restartServiceX # yaddah # The docs are sparse on how define= works in a shellcommand, I'm assuming # here that it means define if shellcommand returns 0 and that # $(makewrapper) runs make in the right place and returns the right values :) shellcommands: genconf:: "$(makewrapper)" define=tolive restartServiceX:: "$(initbase)/serviceX restart" I theory, I think this will achive what you want with less klutz in the conf file... HTH (and if this is totally out of wack, somone please tell me!) -n -- ------------------------------------------- nathan hruby <nhruby@uga.edu> uga enterprise information technology services production systems support metaphysically wrinkle-free -------------------------------------------
[Prev in Thread] | Current Thread | [Next in Thread] |