Display amount of freed disk space in tootctl media remove (#9229)
* Display amount of freed disk space in tootctl media remove Fix #9213 * Fix code style issue
This commit is contained in:
		
							parent
							
								
									ccbdf689e8
								
							
						
					
					
						commit
						3ddb460449
					
				
					 1 changed files with 9 additions and 4 deletions
				
			
		|  | @ -6,6 +6,8 @@ require_relative 'cli_helper' | |||
| 
 | ||||
| module Mastodon | ||||
|   class MediaCLI < Thor | ||||
|     include ActionView::Helpers::NumberHelper | ||||
| 
 | ||||
|     def self.exit_on_failure? | ||||
|       true | ||||
|     end | ||||
|  | @ -36,11 +38,13 @@ module Mastodon | |||
|       time_ago  = options[:days].days.ago | ||||
|       queued    = 0 | ||||
|       processed = 0 | ||||
|       size      = 0 | ||||
|       dry_run   = options[:dry_run] ? '(DRY RUN)' : '' | ||||
| 
 | ||||
|       if options[:background] | ||||
|         MediaAttachment.where.not(remote_url: '').where.not(file_file_name: nil).where('created_at < ?', time_ago).select(:id).reorder(nil).find_in_batches do |media_attachments| | ||||
|         MediaAttachment.where.not(remote_url: '').where.not(file_file_name: nil).where('created_at < ?', time_ago).select(:id, :file_file_size).reorder(nil).find_in_batches do |media_attachments| | ||||
|           queued += media_attachments.size | ||||
|           size   += media_attachments.reduce(0) { |sum, m| sum + (m.file_file_size || 0) } | ||||
|           Maintenance::UncacheMediaWorker.push_bulk(media_attachments.map(&:id)) unless options[:dry_run] | ||||
|         end | ||||
|       else | ||||
|  | @ -49,6 +53,7 @@ module Mastodon | |||
|             Maintenance::UncacheMediaWorker.new.perform(m) unless options[:dry_run] | ||||
|             options[:verbose] ? say(m.id) : say('.', :green, false) | ||||
|             processed += 1 | ||||
|             size      += m.file_file_size | ||||
|           end | ||||
|         end | ||||
|       end | ||||
|  | @ -56,9 +61,9 @@ module Mastodon | |||
|       say | ||||
| 
 | ||||
|       if options[:background] | ||||
|         say("Scheduled the deletion of #{queued} media attachments #{dry_run}", :green, true) | ||||
|         say("Scheduled the deletion of #{queued} media attachments (approx. #{number_to_human_size(size)}) #{dry_run}", :green, true) | ||||
|       else | ||||
|         say("Removed #{processed} media attachments #{dry_run}", :green, true) | ||||
|         say("Removed #{processed} media attachments (approx. #{number_to_human_size(size)}) #{dry_run}", :green, true) | ||||
|       end | ||||
|     end | ||||
|   end | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue