From e89648574f20f24c3e3e8dafeefe5bcca7348ea5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 24 Dec 2020 15:53:45 +0100 Subject: [PATCH] Fix error when changing ACL on missing objects during suspension (#15420) --- app/services/suspend_account_service.rb | 6 +++++- app/services/unsuspend_account_service.rb | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/services/suspend_account_service.rb b/app/services/suspend_account_service.rb index 22e519708..9f4da91d4 100644 --- a/app/services/suspend_account_service.rb +++ b/app/services/suspend_account_service.rb @@ -70,7 +70,11 @@ class SuspendAccountService < BaseService styles.each do |style| case Paperclip::Attachment.default_options[:storage] when :s3 - attachment.s3_object(style).acl.put(acl: 'private') + begin + attachment.s3_object(style).acl.put(acl: 'private') + rescue Aws::S3::Errors::NoSuchKey + Rails.logger.warn "Tried to change acl on non-existent key #{attachment.s3_object(style).key}" + end when :fog # Not supported when :filesystem diff --git a/app/services/unsuspend_account_service.rb b/app/services/unsuspend_account_service.rb index be7ad9df3..ce9ee48ed 100644 --- a/app/services/unsuspend_account_service.rb +++ b/app/services/unsuspend_account_service.rb @@ -61,7 +61,11 @@ class UnsuspendAccountService < BaseService styles.each do |style| case Paperclip::Attachment.default_options[:storage] when :s3 - attachment.s3_object(style).acl.put(acl: Paperclip::Attachment.default_options[:s3_permissions]) + begin + attachment.s3_object(style).acl.put(acl: Paperclip::Attachment.default_options[:s3_permissions]) + rescue Aws::S3::Errors::NoSuchKey + Rails.logger.warn "Tried to change acl on non-existent key #{attachment.s3_object(style).key}" + end when :fog # Not supported when :filesystem