[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[snapshot/master] Use flock to protect sync-incremental



---
 mirror/sync-incremental |   28 ++++++++++++++--------------
 1 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/mirror/sync-incremental b/mirror/sync-incremental
index 774c206..a49f208 100755
--- a/mirror/sync-incremental
+++ b/mirror/sync-incremental
@@ -13,22 +13,22 @@ else
 fi
 
 SYNC_REQUIRED="$HOME/var/sync-required"
-LOCKFILE="$HOME/var/sync.lock"
+LOCKFILE="$HOME/var/sync.flock"
 
-touch "$SYNC_REQUIRED"
+(
+	touch "$SYNC_REQUIRED"
+	if ! flock -e -w 5 200; then
+		exit
+	fi
 
-if ! lockfile -r 0 -l $(( 4 * 60 * 60)) "$LOCKFILE" 2>/dev/null; then
-	exit
-fi
-trap "rm -f '$LOCKFILE'" EXIT
-
-while [ -e "$SYNC_REQUIRED" ] ; do
-	rm -f "$SYNC_REQUIRED"
+	while [ -e "$SYNC_REQUIRED" ] ; do
+		rm -f "$SYNC_REQUIRED"
 
-	#rsync -az --exclude '*.tmp.*' snapshot-master.debian.org:dumps/ "$HOME"/master-dumps/ $v
-	#$BASE/mirror/import-new-dumps -c "$CONF" -s ~/code/snapshot $v
+		#rsync -az --exclude '*.tmp.*' snapshot-master.debian.org:dumps/ "$HOME"/master-dumps/ $v
+		#$BASE/mirror/import-new-dumps -c "$CONF" -s ~/code/snapshot $v
 
-	$BASE/mirror/farm-journal-fetch-tarball -c "$CONF" $v
+		$BASE/mirror/farm-journal-fetch-tarball -c "$CONF" $v
 
-	#$BASE/snapshot --config "$CONF" --verbose --quick index
-done
+		#$BASE/snapshot --config "$CONF" --verbose --quick index
+	done
+) 200> "$LOCKFILE"
-- 
1.7.2.5


Reply to: