#!/bin/bash ## ## This is the official eclipse.org mirror site script. ## ## Set your options and run once manually, then as a cronjob ## ## Last updated: 2023-05-05 by Denis Roy (webmaster@eclipse.org) ## ## ## User-defined options # Set the base path for your mirror site here # No ending / mirror_path="/path/to/mirror" # path to your RSYNC binary RSYNC=/usr/bin/rsync # Lockfile location - prevents rsync script from re-spawning LOCKFILE="/tmp/eclipse_lockfile" # if you rsync from master server, use these options RSYNC_HOST=download.eclipse.org RSYNC_PATH=eclipseMirror # Alternate RSYNC. Comment the master server options above # RSYNC_HOST=rsync.gtlib.gatech.edu # RSYNC_PATH=eclipse # Alternate RSYNC. Comment the master server options above # RSYNC_HOST=rsync2.osuosl.org # RSYNC_PATH=eclipse ## END: User-defined options ## # ## Contributed by Gabriel Akos 2005-10-14 host $RSYNC_HOST > /dev/null hres=$? if [ $hres -ne 0 ]; then echo "Eclipse mirror - host $RSYNC_HOST resolution failed" >/dev/stderr exit 1 fi if [ -e $LOCKFILE ]; then echo "Eclipse mirror - Lockfile $LOCKFILE exists" >/dev/stderr exit 1 fi touch $LOCKFILE ## END: Contributed by Gabriel Akos 2005-10-14 # # required "mirror root" timestamp. # All mirror sites must get this. $RSYNC -tlvp $RSYNC_HOST::$RSYNC_PATH/TIME $mirror_path # mirror everything $RSYNC -rtvp --delete $RSYNC_HOST::$RSYNC_PATH/* $mirror_path # required "mirror root" timestamp. # All mirror sites must get this. $RSYNC -tvp $RSYNC_HOST::$RSYNC_PATH/ztime/* $mirror_path/ztime/ rm $LOCKFILE