You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

20 lines
435 B

  1. # frozen_string_literal: true
  2. class RedownloadMediaWorker
  3. include Sidekiq::Worker
  4. include ExponentialBackoff
  5. sidekiq_options queue: 'pull', retry: 3
  6. def perform(id)
  7. media_attachment = MediaAttachment.find(id)
  8. return if media_attachment.remote_url.blank?
  9. media_attachment.download_file!
  10. media_attachment.download_thumbnail!
  11. media_attachment.save
  12. rescue ActiveRecord::RecordNotFound
  13. true
  14. end
  15. end