Here is the Fog walkthrough of creating a file (an S3 object) in a directory (an S3 bucket):
connection = Fog::Storage.new({
:provider => 'AWS',
:aws_access_key_id => YOUR_AWS_ACCESS_KEY_ID,
:aws_secret_access_key => YOUR_AWS_SECRET_ACCESS_KEY
})
directory = connection.directories.create(
:key => "fog-demo-#{Time.now.to_i}", # globally unique name
:public => true
)
file = directory.files.create(
:key => 'resume.html',
:body => File.open("/path/to/my/resume.html"),
:public => true
)
But it looks to me as though this requires 2 API calls:
connection.directories.create
directory.files.create
If I already have the directory (an S3 bucket) created, how do I create an file (an S3 object) with only one Fog call?