the right setup hopefully
[infrastructure.git] / scripts / nightly-clean-trash.sh
index 1b927eb..11b2078 100755 (executable)
@@ -6,15 +6,23 @@
 [[ -n "$@" ]] && [ "$1" = "-n" ] && set -x
 
 todelete=$(find /build/trash -maxdepth 1 -mtime +1 -print | grep -v 'trash/*$')
-potential_vservers=$(find /build/trash -maxdepth 1 -type d -print | grep -v 'trash/*$')
+potential_vservers=$(find /build/trash -maxdepth 1 -type d -print 2> /dev/null | grep -v 'trash/*$')
 
 # clean the vservers first
-for vserver in $potential_vservers ; do
+[ -d /vservers ] && for vserver in $potential_vservers ; do
     vname=$(basename $vserver)
+    vname=$(basename $vname .log.txt)
     if [ -d /vservers/$vname ] ; then
-       vserver --silent delete $vname
+       vserver --silent $vname delete
        rm -f /vservers/${vname}.log.txt
     fi
-done
+done &> /dev/null
 
 echo $todelete | xargs rm -rf
+
+daily_vnames=$(find /vservers/ -maxdepth 1 -type d -name '20*'  -mtime +7 -print 2> /dev/null | sed -e 's,^/vservers/,,')
+for vname in $daily_vnames; do
+   [ -f /vservers/${vname}.log.txt ] && rm  /vservers/${vname}.log.txt
+   [ -d /vservers/$vname ] && vserver --silent $vname delete
+done
+