| #!/bin/sh |
| |
| |
| # 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 ${BUILD_HOME}/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 -ctime +$ndays -execdir ${BUILD_HOME}/releng.control/removeIf.sh '{}' \; |
| |
| after=`find ${artifactsDir} -mindepth 2 -maxdepth 2 | wc -l`; |
| echo " number of directories after cleaning: ${after}"; |
| echo; |