rsync and new mirroring tool (was cvsup)

Vincent Stemen vs1 at crel.us
Mon Jan 21 01:14:10 PST 2008


On 2008-01-21, Matthew Dillon <dillon at apollo.backplane.com> wrote:
>     We could just add rsync targets in our /usr/Makefile in addition to
>     all the cvsup/pkgsrc targets already in there.
>
>     What, people didn't know we install a Makefile in /usr?  Well, now you
>     do!
>
> 						-Matt

Also, before you decide anything, I should let you know that I decided
to go ahead and write a general purpose rsync based mirroring tool, both
for keeping our own dcvs copy updated and for doing convenient rsync vs
cvsup benchmark testing.

I have been working on it for two nights now.  It is written in Perl
and, so far is working pretty nice.  I call it *mirror*.  I have
a configuration file for it that is pre-configured for all the DragonFly
rsync repository mirroring sites that I know of so far.  It is even more
convenient than cvsup.

I plan to make it available, hopefully in the next day or two.  I was
going to set it up as a standard installable source package 
(i.e. make install) and write a manual first.  I was considering hosting
it as a project on my own site or one of the project hosting sites or
see if you guys are interested in putting it up on the DragonFly site.
I would be interested in feedback.  

It has some pretty nice features so far.  Just to give you a little
preview, I have included just the configuration file below for DragonFly
dcvs mirroring.

=======================================================================

# mirror-dragonfly-cvs.conf
#
# Settings are specified as
#     variable = value
# or
#     variable += value
# to append to a variable.
# 
# This mirror file will maintain a copy of the DragonFly BSD CVS tree.
#
# $Id$
#
############################################################################

# $sites
# Source URLs or paths for retrieving file updates.
# Example: rsync.TheShell.com::DragonFly/dcvs
#      or: rsync://rsync.TheShell.com/DragonFly/dcvs
#
sites  = rsync.TheShell.com::DragonFly/dcvs
sites += rsync.AllBSD.org::dragonfly-cvs
sites += chlamydia.fs.ei.tum.de::dragonfly-cvs
sites += crater.dragonflybsd.org::dragonfly_cvs

# $destination
# Specifies where to place the requested files.
#
destination = /home/dcvs

# $rsync_opts
# Options to pass to rsync
#
rsync_opts += --archive --hard-links --delete
rsync_opts += --compress
rsync_opts += --verbose
#rsync_opts += --progress

# $files
# Files or directories to mirror
#
files  = CVSROOT    # Basic CVS data.  Required to use cvs.
files += src        # The DragonFly source code
files += doc        # Documentation
#files += site      # The DragonFly website code







More information about the Users mailing list