From f9c3503088e24ef9e4e180fdc6f28e4eca1091a2 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Tue, 13 Dec 2016 16:44:26 +0100 Subject: [PATCH] Bug 17669: Incorporate the changes in cleanup_database Two command line options are added: [1] -temp-uploads to indicate that you want to purge these uploads, [2] -temp-uploads-override DAYS to (optionally) tell that you want to override the corresponding pref value. Test plan: [1] Check the modified usage statement. [2] If needed, backup your temporary uploads :) In case you do not have one, add a temporary one with Tools/Upload. Note: Do not choose an upload category. [3] Set pref to 0, and run cleanup_database with only --temp-uploads. No files should be deleted. [4] Check number of "old" temp uploads. Set pref to nonzero value. Verify that the oldest are gone (depending on the value chosen). [5] Set pref to 0 again. If all uploads are gone now, add a new one with Tools/Upload. Run cleanup_database with --temp-uploads --temp-uploads-override -1 All temporary files are gone. Signed-off-by: Marcel de Rooy Signed-off-by: Mirko Tietgen Signed-off-by: Jonathan Druart --- misc/cronjobs/cleanup_database.pl | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/misc/cronjobs/cleanup_database.pl b/misc/cronjobs/cleanup_database.pl index 52028f2..f67a934 100755 --- a/misc/cronjobs/cleanup_database.pl +++ b/misc/cronjobs/cleanup_database.pl @@ -40,10 +40,11 @@ use C4::Search::History; use Getopt::Long; use C4::Log; use C4::Accounts; +use Koha::UploadedFiles; sub usage { print STDERR < \$help, @@ -122,6 +127,8 @@ GetOptions( 'del-exp-selfreg' => \$pExpSelfReg, 'del-unv-selfreg' => \$pUnvSelfReg, 'unique-holidays:i' => \$special_holidays_days, + 'temp-uploads' => \$temp_uploads, + 'temp-uploads-override:i' => \$override_temp_uploads, ) || usage(1); # Use default values @@ -153,6 +160,7 @@ unless ( $sessions || $pExpSelfReg || $pUnvSelfReg || $special_holidays_days + || $temp_uploads ) { print "You did not specify any cleanup work for the script to do.\n\n"; usage(1); @@ -302,6 +310,16 @@ if ($special_holidays_days) { DeleteSpecialHolidays( abs($special_holidays_days) ); } +if( $temp_uploads ) { + # Delete temporary uploads, governed by a pref. + # If the pref is empty, nothing happens (unless you override). + print "Purging temporary uploads.\n" if $verbose; + Koha::UploadedFiles->delete_temporary({ + override_pref => $override_temp_uploads, + }); + print "Done purging temporary uploads.\n" if $verbose; +} + exit(0); sub RemoveOldSessions { -- 2.9.3