From c46843c65c0761f97d894f21e361489a0fa1a60a Mon Sep 17 00:00:00 2001
From: leopku <leopku@qq.com>
Date: Thu, 23 Mar 2017 15:44:55 +0800
Subject: [PATCH] :wrench: S3 protocol  from ENV

add support for reading S3 protocol from ENV
also add S3_HOSTNAME in .env.production.sample
---
 .env.production.sample           | 2 ++
 config/initializers/paperclip.rb | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/.env.production.sample b/.env.production.sample
index ef0af9d5c2..bd81b8fcaa 100644
--- a/.env.production.sample
+++ b/.env.production.sample
@@ -39,6 +39,8 @@ SMTP_FROM_ADDRESS=notifications@example.com
 # AWS_ACCESS_KEY_ID=
 # AWS_SECRET_ACCESS_KEY=
 # S3_REGION=
+# S3_PROTOCOL=http
+# S3_HOSTNAME=192.168.1.123:9000
 
 # Optional alias for S3 if you want to use Cloudfront or Cloudflare in front
 # S3_CLOUDFRONT_HOST=
diff --git a/config/initializers/paperclip.rb b/config/initializers/paperclip.rb
index 580a3196e6..2a2ef8fea7 100644
--- a/config/initializers/paperclip.rb
+++ b/config/initializers/paperclip.rb
@@ -11,7 +11,7 @@ if ENV['S3_ENABLED'] == 'true'
   Aws.eager_autoload!(services: %w(S3))
 
   Paperclip::Attachment.default_options[:storage]        = :s3
-  Paperclip::Attachment.default_options[:s3_protocol]    = 'https'
+  Paperclip::Attachment.default_options[:s3_protocol]    = ENV.fetch('S3_PROTOCOL') { 'https' }
   Paperclip::Attachment.default_options[:url]            = ':s3_domain_url'
   Paperclip::Attachment.default_options[:s3_host_name]   = ENV.fetch('S3_HOSTNAME') { "s3-#{ENV.fetch('S3_REGION')}.amazonaws.com" }
   Paperclip::Attachment.default_options[:path]           = '/:class/:attachment/:id_partition/:style/:filename'
-- 
GitLab