メモ。
# -*- encoding: utf-8 -*- require 'logger' require 'aws-sdk' configs = { access_key_id: 'C_AHU4UXUQE9CBDSY8WX', secret_access_key: 'GR63vRcdenI1P99LPD8_ucE_RZhf9lpXwlyVxA==', s3_endpoin: 'localhost', proxy_uri: 'http://localhost:9090', use_ssl: false, # logger: Logger.new($stdout), # log_level: 'debug', } AWS::config(configs) connection = AWS::S3.new buckets = connection.buckets['bucket_name'] # List all items = [] buckets.objects.each do |obj| p obj.key items.push(obj.key) end # Get item item = buckets.objects[items[0]] File.open('./test.txt', 'wb') do |file| item.read do |chunk| file.write(chunk) end end
Proxy の書き方が分からなくて困った…。
URI 形式で書けば行けた。
Boto みたいに詳細なドキュメントが見つけられなくて困った*1。
結局 Fluent の S3 プラグインの実装を眺めて初めて Proxy の設定の仕方が分かった。
fluent-plugin-s3/out_s3.rb at master · fluent/fluent-plugin-s3 · GitHub