summaryrefslogtreecommitdiff
path: root/app/workers/object_storage_upload_worker.rb
blob: 5c80f34069c2412f961f8941f33b2127f053a10d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# @Deprecated - remove once the `object_storage_upload` queue is empty
# The queue has been renamed `object_storage:object_storage_background_upload`
#
class ObjectStorageUploadWorker
  include ApplicationWorker

  sidekiq_options retry: 5

  def perform(uploader_class_name, subject_class_name, file_field, subject_id)
    uploader_class = uploader_class_name.constantize
    subject_class = subject_class_name.constantize

    return unless uploader_class < ObjectStorage::Concern
    return unless uploader_class.object_store_enabled?
    return unless uploader_class.background_upload_enabled?

    subject = subject_class.find(subject_id)
    uploader = subject.public_send(file_field) # rubocop:disable GitlabSecurity/PublicSend
    uploader.migrate!(ObjectStorage::Store::REMOTE)
  end
end