diff --git a/app/workers/attachment_cache_worker.rb b/app/workers/attachment_cache_worker.rb index ac58f88c1431d90429c46d1a3c57662ab03aec53..61eec509d2ff140073bf914ca6c6ed4734f9fa0d 100644 --- a/app/workers/attachment_cache_worker.rb +++ b/app/workers/attachment_cache_worker.rb @@ -1,5 +1,4 @@ class AttachmentCacheWorker - require 'fileutils' include Sidekiq::Worker sidekiq_options queue: :attachment_cache @@ -16,7 +15,10 @@ class AttachmentCacheWorker file = client.bitstreams.retrieve(id: @attachment.id_dspace).open begin - @attachment.update(cache_link: cache_link) if FileUtils.mkdir_p(directory_root) && FileUtils.mv(file.path, file_root) + FileUtils.mkdir_p(directory_root) + FileUtils.mv(file.path, file_root) + FileUtils.chmod 0644, file_root.to_s, verbose: true + @attachment.update(cache_link: cache_link) ensure file.close if !file.nil? && File.exist?(file.path) end