module Bukelatta::Ext::AwsS3BucketExt
Public Instance Methods
auto_redirect() { |bckt| ... }
click to toggle source
# File lib/bukelatta/ext/aws_s3_bucket_ext.rb, line 3 def auto_redirect ret = nil bckt = self begin ret = yield(bckt) rescue Aws::S3::Errors::PermanentRedirect => e res_body = MultiXml.parse(e.context.http_response.body.read) edpnt = res_body['Error']['Endpoint'] clnt = Aws::S3::Client.new(endpoint: "https://#{edpnt}") rsrc = Aws::S3::Resource.new(client: clnt) bckt = rsrc.bucket(bckt.name) retry end ret end