cvs commit: projects/freebsd-update-server/tools umirror-init.sh umirror-package.sh umirror-release.sh umirror.sh

Colin Percival cperciva at FreeBSD.org
Tue Sep 1 10:49:17 UTC 2009


cperciva    2009-09-01 10:49:16 UTC

  FreeBSD projects repository

  Added files:
    freebsd-update-server/tools umirror-init.sh umirror-package.sh 
                                umirror-release.sh umirror.sh 
  Log:
  Add scripts used for mirroring FreeBSD Update bits.  In order to keep
  the window between SVN commits being done to the src tree and updates
  being available via FreeBSD Update to a minimum, bits are distributed
  first as encrypted tarballs and encryption keys are "released" later.
  The list of tarballs and their hashes is signed with an RSA key.
  
  Server-side usage:
  * Run umirror-init.sh on update-master to generate a key and set up
  some files.
  * Make FreeBSD Update buildboxes upload bits into a staging directory
  (e.g., ~builder/update-master-stage).
  * Run umirror-package.sh to package up bits from the staging directory
  and publish an encrypted tarball.
  * Wait until it's time to release the bits.
  * Run umirror-release.sh to publish all not-yet-released decryption
  keys.
  
  Mirror-side usage:
  * Run umirror.sh from a cron job to poll for updates, downloading
  encrypted tarballs when they become available, and downloading the
  decryption keys and extracting the bits when possible.  I recommend
  running umirror.sh from a cron job every minute, guarded by a lock
  file.
  
  The FreeBSD Project is using these scripts now, but other users of
  FreeBSD Update probably do not need them -- the FreeBSD Update build
  code is designed to upload bits directly to a published directory.
  These scripts are only made necessary by the dual problems of
  (a) wanting to get FreeBSD Update bits out to multiple mirrors quickly,
  and (b) dealing with embargoed updates.
  
  Revision  Changes    Path
  1.1       +45 -0     projects/freebsd-update-server/tools/umirror-init.sh (new)
  1.1       +62 -0     projects/freebsd-update-server/tools/umirror-package.sh (new)
  1.1       +18 -0     projects/freebsd-update-server/tools/umirror-release.sh (new)
  1.1       +164 -0    projects/freebsd-update-server/tools/umirror.sh (new)


More information about the cvs-all mailing list