def cleanup(request): try: days = int(request.POST.get('days', settings.ATIME_DEFAULT)) if management.cleanup_old_files(days): messages.info(request, "Successfully purged files older than %d days." % days) else: messages.error(request, "Error removing old files.") except Exception as e: messages.error(request, "Error removing old files: %s" % e) try: stdout, stderr = management.report_file_size() if stdout: for l in stdout.split('\n'): messages.info(request, l) if stderr: messages.error(request, stderr) except Exception as e: messages.error(request, 'Error finding file size' % e)
parser.add_option("-v", "--verbose", action="store_true", dest="verbose", help="Show more verbose log messages.") parser.add_option("-a", "--atime", action="store", dest="atime", default=settings.ATIME_DEFAULT, help="argument to find's atime predicate for how many " "days since it has been accessed before we decide to " "delete it. Defaults to %default") (options,args) = parser.parse_args() if options.verbose: #logger is set to WARNING by default logger.setLevel(logging.DEBUG) try: days = int(options.atime) except: logger.error("Invalid number of days to keep for; must be an integer.") sys.exit(1) try: if management.cleanup_old_files(options.atime): logger.info("Success!") except SystemExit: raise except: logger.exception("Error during cleanup.") sys.exit(1)