blob: d89644f9d64f2f8b60a58c3c69ee5bbf41523f30 [file] [log] [blame]
#!/usr/bin/env bash
# remember to leave no slashes on filename in source command,
# (the commonVariations.shsource file, that is)
# so that users path is used to find it (first)
if [ -z $BUILD_INITIALIZED ]
then
source commonVariations.shsource
source ${RELENG_CONTROL}/commonComputedVariables.shsource
fi
# remove artifacts over n days old
# (where hours = 24 + (n * 24), basically, so that
# even n=0 means "1 day")
# set at 10 days, under assumption that before that time,
# artifacts will be "saved" elsewhere, if needed.
# if more cleanup is needed, we should take time, and
# existence of more recent builds into account, so we never
# delete the last existing build (even if "old").
ndays=4;
artifactsDir=${PROJECT_ARTIFACTS};
echo;
echo " Removing artifact directories older than ${ndays} days";
echo " (from ${artifactsDir})";
before=`find ${artifactsDir} -mindepth 2 -maxdepth 2 | wc -l`;
echo " number of directories before cleaning: ${before}";
# empty directories often result from "bad builds". We remove those no matter how old
find ${artifactsDir} -mindepth 2 -maxdepth 3 -type d -empty -exec rm -fr '{}' \;
# now remove old ones
find ${artifactsDir} -mindepth 2 -maxdepth 2 -type d -ctime +$ndays -execdir ${RELENG_CONTROL}/removeIf.sh '{}' \;
after=`find ${artifactsDir} -mindepth 2 -maxdepth 2 | wc -l`;
echo " number of directories after cleaning: ${after}";
echo