diff options
| author | Kevin Fenzi <kevin@scrye.com> | 2016-05-27 22:05:41 +0000 |
|---|---|---|
| committer | Kevin Fenzi <kevin@scrye.com> | 2016-05-27 22:05:41 +0000 |
| commit | daa00a39b136e5f1617af442f8f69f143eb7a733 (patch) | |
| tree | dacd969b5276787db5b3199abecc0e89e0d931fc /files/scripts/update-fullfiletimelist | |
| parent | 073e417e4c21bfcb25cc4101b95cabd15a09e01f (diff) | |
Put new create-filelist in scripts so we can use it all the places we need.
Diffstat (limited to 'files/scripts/update-fullfiletimelist')
| -rwxr-xr-x | files/scripts/update-fullfiletimelist | 43 |
1 files changed, 27 insertions, 16 deletions
diff --git a/files/scripts/update-fullfiletimelist b/files/scripts/update-fullfiletimelist index ddb481dcd..04e6e0b58 100755 --- a/files/scripts/update-fullfiletimelist +++ b/files/scripts/update-fullfiletimelist @@ -1,22 +1,33 @@ -#!/bin/bash - -# currently runs on secondary01 from cron to update alt +#!/bin/sh MOD=$1 [ -z "$MOD" ] && { - echo "usage: $0 <module>" - exit 1 + echo "usage: $0 <module>" + exit 2 } -# This is the new list with timestamps +TOPD=/srv/pub/ +FILELIST=fullfilelist +TIMELIST=fullfiletimelist-$MOD +LOCKFILE=.lock.$TIMELIST +CREATE=/usr/local/bin/create-filelist + +( + flock -n 9 || exit 1 + + TMPD=$(mktemp -d -t create-filelist.XXXXXXXXXX) + trap "rm -rf $TMPD" EXIT + cd $TMPD + + $CREATE -c -s -d $TOPD/$MOD -f $FILELIST -t $TIMELIST + if diff -q $FILELIST $TOPD/$MOD/$FILELIST > /dev/null; then + mv $FILELIST $TOPD/$MOD/$FILELIST + chmod 0644 $TOPD/$MOD/$FILELIST + fi + + if diff -q $TIMELIST $TOPD/$MOD/$TIMELIST > /dev/null; then + mv $TIMELIST $TOPD/$MOD/$TIMELIST + chmod 0644 $TOPD/$MOD/$TIMELIST + fi -TMPFILE=$(mktemp -p /tmp/) -pushd /srv/pub/$MOD > /dev/null -/usr/local/bin/create-filelist . > $TMPFILE -if diff $TMPFILE fullfiletimelist > /dev/null; then - rm -f $TMPFILE -else - mv $TMPFILE fullfiletimelist - chmod 0644 fullfiletimelist -fi -popd > /dev/null +) 9>$LOCKFILE |
