gitlab-org--gitlab-foss/app/uploaders/import_export_uploader.rb
Stan Hu ec341a2bbd Clean up CarrierWave's import/export files
Unlike uploads that have been uploaded with Tempfile, the project
import/export archives are stored in a temporary cache directory and
remain there if:

1. Object storage is enabled
2. `move_to_store` is set to `true`.

CarrierWave will leave these files there until disk space runs out or a
clean step is run manually.

If `move_to_store` is set to `false`, CarrierWave will remove the files
after storing them. However, unlike a local file, with object storage,
the file is still copied, so setting `move_to_store` to `true`
doesn't buy us anything.

To ensure files are cleaned up, we can just inherit from the
GitlabUploader implementation of `move_to_store`, which returns `true`
if it's a local file, `false` otherwise.

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/60656
2019-05-07 01:27:50 -07:00

13 lines
222 B
Ruby

# frozen_string_literal: true
class ImportExportUploader < AttachmentUploader
EXTENSION_WHITELIST = %w[tar.gz gz].freeze
def extension_whitelist
EXTENSION_WHITELIST
end
def move_to_cache
false
end
end