in s3_file/libraries/s3_file.rb [136:164]
def self.get_from_s3(bucket, url, path, aws_access_key_id, aws_secret_access_key, token, region)
response = nil
retries = 5
for attempts in 0..retries
begin
response = do_request("GET", url, bucket, path, aws_access_key_id, aws_secret_access_key, token, region)
return response
rescue client::MovedPermanently, client::Found, client::TemporaryRedirect => e
uri = URI.parse(e.response.header['location'])
path = uri.path
uri.path = ""
url = uri.to_s
retry
rescue => e
error = e.respond_to?(:response) ? e.response : e
if attempts < retries
Chef::Log.warn(error)
sleep 5
next
else
Chef::Log.fatal(error)
raise e
end
raise e
end
end
end