makedist/config/30-makedist-autobuild-cleanold

73 lines
2.8 KiB
Bash
Executable File

#!/bin/bash
#
# Makedist automatic clean script
# Copyright (c) 2007-2012 by Silvan Calarco <silvan.calarco@mambasoft.it>
#
. /etc/sysconfig/makedist
SOURCEDIR=/var/makedist
DESTBASEDIR=/var/ftp/pub/openmamba/devel/media
DESTBASEURL=/pub/openmamba/devel/media
[ "$TODAYDATE" ] || TODAYDATE=`date +%Y%m%d`
GLOBDOWNLOADSFILE=$DESTBASEDIR/downloads.inc
LANGS="it en es"
ARCHS="i586 arm x86_64"
tmpfile=`mktemp`
[ $tmpfile ] || {
echo "Error: cannot create temporary files; aborting."
exit 1
}
for l in $LANGS; do
for d in `find $DESTBASEDIR/*/$l -maxdepth 0 -type d`; do
for a in $ARCHS; do
> $tmpfile
# the following code was used to recover when unetbootin symlink was added causing all iso to be moved
#for f in `find $d -type l`; do
# rl=`readlink -f $f`
# r=`basename $rl`
# [ -e $d/old/$r ] && mv $d/old/$r* $d/
#done
for f in `find $d -maxdepth 1 -type f -a \( -name "*.$a.iso" -o -name "*.$a.cpio.gz" -o -name "*.$a.tar.gz" -o -name "*.$a.tar.xz" -o -name "*.$a.tar.bz2" \)`; do
echo `stat -c %Z $f` `basename $f` >> $tmpfile
done
filecount=0
for f in `cat $tmpfile | sort -r | awk '{ print $2 }' `; do
if [ $filecount = 0 ]; then
[ "$VERBOSE" -o "$SIMULATE" ] && echo "KEEP $f"
else
[ "$VERBOSE" -o "$SIMULATE" ] && echo "MOVE $f"
[ "$SIMULATE" ] && continue
[ -e $d/old ] || mkdir -p $d/old
mv $d/$f $d/old/
[ -e $d/$f.MD5.txt ] && mv $d/$f.MD5.txt $d/old/
[ -e $d/$f.torrent ] && mv $d/$f.torrent $d/old/
fi
filecount=`expr $filecount + 1`
done
# clean old directory
> $tmpfile
for f in `find $d/old -maxdepth 1 -name "*.$a.iso" -o -name "*.$a.cpio.gz" -o -name "*.$a.tar.gz" -o -name "*.$a.tar.xz" -o -name "*.$a.tar.bz2"`; do
echo `stat -c %Z $f` `basename $f` >> $tmpfile
done
SNAPSHOT_DATE=
for f in `cat $tmpfile | sort -r | awk '{ print $2 }' `; do
SNAPSHOT_DATE_PREVIOUS=$SNAPSHOT_DATE
SNAPSHOT_DATE=`echo $f | sed "s|.*snapshot-\([0-9]*\)\..*|\1|"`
if [ "${SNAPSHOT_DATE:0:6}" = "${SNAPSHOT_DATE_PREVIOUS:0:6}" ]; then
[ "$VERBOSE" -o "$SIMULATE" ] && echo "DELE old/$f ($SNAPSHOT_DATE)"
[ "$SIMULATE" ] && continue
rm -f $d/old/$f
[ -e $d/old/$f.MD5.txt ] && rm -f $d/old/$f.MD5.txt
[ -e $d/old/$f.torrent ] && rm -f $d/old/$f.torrent
else
[ "$VERBOSE" -o "$SIMULATE" ] && echo "KEEP old/$f ($SNAPSHOT_DATE)"
fi
done
done
# echo
# ls --sort=time $d/*.iso $d/*.cpio.gz
#find $DESTBASEDIR -name *.iso
done
done