diff options
author | George Claghorn <george.claghorn@gmail.com> | 2017-07-15 08:29:54 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-15 08:29:54 -0400 |
commit | 147b409e00212f932e35ae446eced96704eaaacd (patch) | |
tree | a1e283531c67d0b9beb48def00a67d37f04aafd8 | |
parent | a4e0e16e05fa49fc84b92a5ffd42a9f728ee1f89 (diff) | |
parent | 4dd44bc5e894d5a6e7f40881f318fa67e9aa1a77 (diff) | |
download | rails-147b409e00212f932e35ae446eced96704eaaacd.tar.gz rails-147b409e00212f932e35ae446eced96704eaaacd.tar.bz2 rails-147b409e00212f932e35ae446eced96704eaaacd.zip |
Merge pull request #48 from seanhandley/hosted_s3
Allow custom endpoints for S3.
-rw-r--r-- | lib/active_storage/service/s3_service.rb | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/lib/active_storage/service/s3_service.rb b/lib/active_storage/service/s3_service.rb index e75ac36c7d..f78e2d3246 100644 --- a/lib/active_storage/service/s3_service.rb +++ b/lib/active_storage/service/s3_service.rb @@ -4,8 +4,24 @@ require "active_support/core_ext/numeric/bytes" class ActiveStorage::Service::S3Service < ActiveStorage::Service attr_reader :client, :bucket - def initialize(access_key_id:, secret_access_key:, region:, bucket:) - @client = Aws::S3::Resource.new(access_key_id: access_key_id, secret_access_key: secret_access_key, region: region) + def initialize(access_key_id:, secret_access_key:, region:, bucket:, endpoint: nil) + @client = if endpoint + Aws::S3::Resource.new( + access_key_id: access_key_id, + secret_access_key: secret_access_key, + region: region, + bucket: bucket + ) + else + Aws::S3::Resource.new( + access_key_id: access_key_id, + secret_access_key: secret_access_key, + region: region, + bucket: bucket, + endpoint: endpoint + ) + end + @bucket = @client.bucket(bucket) end |