We do this by turning single copy one, and having a r=inf in the copy statement. Example:
 
cfgagent.conf
...
control:
    singlecopy = ( on )
...
 
cf.copy
    copy:
        $(masterfiles)/copy/hosts/$(host)
            dest=/
            ...
            r=inf
            ...
 
In the source directory, you make a directory structure following the paths from root, ie
 
$(masterfiles)/copy/hosts/foobar/etc/foo.conf
 
It will then copy it to /etc/foo.conf as the destination, but you can put any number of files in there also. You can go crazy with classes so files are copied to whole classes of machines, I just used 'hosts' as an example. One problem: I don't know how to control the perms on the subdirectories on the destination to be left alone!
 
RCA
--
UNIX Administrator, BAE Systems L & A -  ASD
desk 763-572-6684  mobile 612-419-9362

>>> Jason Martin <[EMAIL PROTECTED]> 7/11/2006 5:19:40 PM >>>
On Wed, Jul 12, 2006 at 08:39:58AM +1200, Dax Bunce wrote:
>     ${source_directory}
>         dest=/jumpstart/bootstrap/
>         r=inf
>
> Is that what you mean?
I think he is looking for the equivalent of "rsync /tmp/a /tmp/b
/var/d /foo/f" where by several different source directories can
be copied to a common destination directory in one statement.

-Jason Martin
--
Never mind the facts - I know what I know.
This message is PGP/MIME signed.
_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
http://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to