summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@gitlab.com>2018-12-18 08:55:33 +0000
committerSean McGivern <sean@gitlab.com>2018-12-18 08:55:33 +0000
commit651d12645b28a05a5a20734c5b3019b71eaa3dd2 (patch)
tree62d3a959aecd00d0ea5537f3a7269679073ae77c
parent41a942bedaa9ef003a5a2579d3f7d986c506818d (diff)
parent79a091b12aab9c41085840eb7db28d9787dd2573 (diff)
downloadgitlab-ce-651d12645b28a05a5a20734c5b3019b71eaa3dd2.tar.gz
Merge branch 'sh-carrierwave-patch-google-acl' into 'master'
Fix object storage not working properly with Google S3 compatibility Closes #53846 See merge request gitlab-org/gitlab-ce!23858
-rw-r--r--Gemfile5
-rw-r--r--changelogs/unreleased/sh-carrierwave-patch-google-acl.yml5
-rw-r--r--config/initializers/carrierwave_patch.rb13
3 files changed, 21 insertions, 2 deletions
diff --git a/Gemfile b/Gemfile
index 70c08c5f1eb..e34909afc14 100644
--- a/Gemfile
+++ b/Gemfile
@@ -89,8 +89,9 @@ gem 'kaminari', '~> 1.0'
gem 'hamlit', '~> 2.8.8'
# Files attachments
-# Locked until https://github.com/carrierwaveuploader/carrierwave/pull/2332/files is merged.
-# config/initializers/carrierwave_patch.rb can be removed once that change is released.
+# Locked until https://github.com/carrierwaveuploader/carrierwave/pull/2332 and
+# https://github.com/carrierwaveuploader/carrierwave/pull/2356 are merged.
+# config/initializers/carrierwave_patch.rb can be removed once both changes are released.
gem 'carrierwave', '= 1.2.3'
gem 'mini_magick'
diff --git a/changelogs/unreleased/sh-carrierwave-patch-google-acl.yml b/changelogs/unreleased/sh-carrierwave-patch-google-acl.yml
new file mode 100644
index 00000000000..206253a100c
--- /dev/null
+++ b/changelogs/unreleased/sh-carrierwave-patch-google-acl.yml
@@ -0,0 +1,5 @@
+---
+title: Fix object storage not working properly with Google S3 compatibility
+merge_request: 23858
+author:
+type: fixed
diff --git a/config/initializers/carrierwave_patch.rb b/config/initializers/carrierwave_patch.rb
index 35ffff03abe..c361784491d 100644
--- a/config/initializers/carrierwave_patch.rb
+++ b/config/initializers/carrierwave_patch.rb
@@ -23,6 +23,19 @@ module CarrierWave
end
end
end
+
+ # Fix for https://github.com/carrierwaveuploader/carrierwave/pull/2356
+ def acl_header
+ if fog_provider == 'AWS'
+ { 'x-amz-acl' => @uploader.fog_public ? 'public-read' : 'private' }
+ else
+ {}
+ end
+ end
+
+ def fog_provider
+ @uploader.fog_credentials[:provider].to_s
+ end
end
end
end