[NZLUG] Managing multiple-machine application configs with DVCS
steve at greengecko.co.nz
Tue Jun 4 17:21:41 NZST 2013
On Tue, 2013-06-04 at 16:52 +1200, Jim Cheetham wrote:
> I'm looking for some advice on ways to manage the operational configs
> of a bunch of almost-completely-the-same machines, in this case using
> git but I expect working patterns from other DVCSs will apply well
> enough ... (No, puppet and friends are not currently a useful answer)
> So, I have a bunch of machines with the same app on each, where the
> app config directories are 99% the same. It seems to make sense to
> have each machine's directory in git, and have a single upstream copy
> of the repository. Some files are volatile; I can ignore those OK.
> When I make a change to the config to one host, I can push it to the
> central repo, and from there get it to the other hosts.
> My current problem however is that some files have unique lines, e.g.
> http config files with ServerName lines. I'd like to be able to track
> the file for changes to the other lines in the config, which are
> significant, but to allow local differences on specific lines.
> I originally thought I'd be able to use branches (i.e. each machine's
> working copy is on its own branch) but that doesn't seem flexible
> enough. Perhaps I need to do something like maintain a set of patch
> files that get applied to each host's working directory, the changes
> are consistent and fixed ... but I don't know whether that's a good
> Comments welcome ... :-) But I'm not going to move to puppet in the
> short term ...
I hate to say this, as I've only maintained a setup designed and
implemented by someone with what looked like severe mental deficiencies,
but would capistrano/webistrano do the job?
I think it possibly will.
Steve Holdoway BSc(Hons) MNZCS
More information about the NZLUG