require 'rubygems'
require 'fog' # version 1.10.1
fog_credentials = {
provider: "AWS",
aws_access_key_id: "QWERTTYQWERTTYQWERTT",
aws_secret_access_key: "q1w2e3r4t5yQWERTYUq1w2e3r4t5yQWERTYasdf1",
region: "ap-southeast-2" # Sydney ;)
}
CONNECTION = Fog::Storage.new fog_credentials
S3 = CONNECTION.directories.get 'bucket-name'
S3.files.create(key: 'test_me/test1', body: 'xxxxxxxxx')
The following works with Carrierwave
require 'carrierwave'
require 'fog'
CarrierWave.configure do |config|
config.fog_credentials = {
provider: 'AWS',
aws_access_key_id: 'QWERTYQWERTYQWERTYTY',
aws_secret_access_key: 'qewr1234qewr1234qwer1234qwer1234qwer1234',
region: 'ap-southeast-2' # Sydney :)
}
config.fog_public = false
config.fog_directory = 'bucket-name'
end
class MyUploader < CarrierWave::Uploader::Base
storage :fog
end
file = File.open('/tmp/tmp.txt')
uploader = MyUploader.new
uploader.store!(file)