You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Josh Lauricha <la...@bioinfo.ucr.edu> on 2004/12/18 07:03:34 UTC

svn configuration

The cluster I manage uses Debian's FAI to install them. One of their
cool little utilities is fcopy. This allows one directory structure to
be used to store the configuration for many machines. Each machine has a
list of classes and which file is taken out of the directory tree is
based on which on the classes. For instance if the classes are: FOO,
BAR, BAZ and the directory tree is:
    /fileone/
        /FOO
        /DEFAULT
    /filetwo/
        /BAR
    /filethree/
        /ZZZ

then /fileone/FOO will be copied as /fileone, /filetwo/BAR will be
copied as /filetwo and /filethree wont exist since no classes match.

This works really nicely for installing machines that are slightly
different, but can't really be used to manage them. I'd like to make a
svn-based version of this utility. Basically, I'd need to put a step in
the middle of the initialize, commit and update, however I can't quite
figure out how to do this.

Right now, I can use svn_client_cat to pull them out of the repository,
but since there's no working copy I can't easily update only those that
need it, or commit changes. And using svn+ssh needs the password for
every access.

It looks like I'll need to basically rewrite the client libs for this
structure, which is what I expected. To do this it looks like: on init I
create the admin area then update; and on update and commit I would use
a special svn_delta_editor_t to munge the path names. I can tell if its
a "special" directory by a property (svncfg:type), at which point I
would need to cancel or ignore the pushes of non-appropriate files from
the server.

After all that, if your still with me... I should get a working copy
that just consists of the applicable config files for that machine?

Further, updates are done by the ra_lib->do_update and commits are done
with svn_wc_transmit_text_deltas correct?

-- 

------------------------------------------------------
| Josh Lauricha            | Ford, you're turning    |
| laurichj@bioinfo.ucr.edu | into a penguin. Stop    |
| Bioinformatics, UCR      | it                      |
|----------------------------------------------------|
| OpenPG:                                            |
|  4E7D 0FC0 DB6C E91D 4D7B C7F3 9BE9 8740 E4DC 6184 |
|----------------------------------------------------|

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svn configuration

Posted by Josh Lauricha <la...@bioinfo.ucr.edu>.
On Dec 18, 2004, at 8:13 AM, Marcus Rueckert wrote:
> hi
>
> do you know about http://sourceforge.net/projects/cfgarch ?

Thats close, but not quite what I want. One problem with it is its 
push, and I prefer pull methods. The main reason for this is that I 
maintain around 50 machines. Around 10 of these are dual boot 
workstations, so there's a good chance a few of them are either off or 
booted in windows (or osx) and maintaining the list of which are up can 
be a pain. The second problem is the configuration file would get 
rather large with these. Each machine in the cluster has a couple files 
unique to it. With cfgarch I'd need to specify:

[HOST]
NAME=node01
FILE=foo/node01
FILE=foo/node01

for all 32 nodes, which can become quite tedious. But thanks for the 
pointer.

Josh Lauricha
laurichj@bioinfo.ucr.edu
OpenPGP: 5A0D 92D3 D093 79DE F724 1137 6DF1 B5EB D9CE AAA8

Re: svn configuration

Posted by Marcus Rueckert <da...@web.de>.
hi

do you know about http://sourceforge.net/projects/cfgarch ?

darix

-- 
irssi - the client of the smart and beautiful people

              http://www.irssi.de/


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org