delete unfinished upload files
This commit is contained in:
@@ -57,6 +57,19 @@ class UploadService
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def self.delete_file(md5, file_ext)
|
||||||
|
if Post.where(md5: md5).exists?
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
Danbooru.config.storage_manager.delete_file(nil, md5, file_ext, :original)
|
||||||
|
Danbooru.config.storage_manager.delete_file(nil, md5, file_ext, :large)
|
||||||
|
Danbooru.config.storage_manager.delete_file(nil, md5, file_ext, :preview)
|
||||||
|
Danbooru.config.backup_storage_manager.delete_file(nil, md5, file_ext, :original)
|
||||||
|
Danbooru.config.backup_storage_manager.delete_file(nil, md5, file_ext, :large)
|
||||||
|
Danbooru.config.backup_storage_manager.delete_file(nil, md5, file_ext, :preview)
|
||||||
|
end
|
||||||
|
|
||||||
def self.calculate_ugoira_dimensions(source_path)
|
def self.calculate_ugoira_dimensions(source_path)
|
||||||
folder = Zip::File.new(source_path)
|
folder = Zip::File.new(source_path)
|
||||||
Tempfile.open("ugoira-dim-") do |tempfile|
|
Tempfile.open("ugoira-dim-") do |tempfile|
|
||||||
@@ -147,6 +160,12 @@ class UploadService
|
|||||||
preview_file.try(:close!)
|
preview_file.try(:close!)
|
||||||
sample_file.try(:close!)
|
sample_file.try(:close!)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# in case this upload never finishes processing, we need to delete the
|
||||||
|
# distributed files in the future
|
||||||
|
Danbooru.config.other_server_hosts.each do |host|
|
||||||
|
UploadService::Utils.delay(queue: host, run_at: 10.minutes.from_now).delete_file(upload.md5, upload.file_ext)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
# these methods are only really used during upload processing even
|
# these methods are only really used during upload processing even
|
||||||
|
|||||||
Reference in New Issue
Block a user