Awsum
Awsum (Pronounced Awesome) is a library for working with Amazon web services. The concept of Awsum is to expose the AWS library is the most ruby way possible allowing you to work with objects in a very natural way.
Quick Start
#Create a snapshot for every volume of every instance you own
ec2 = Awsum::Ec2.new(<access key>, <secret key>)
ec2.instances.each do |instance|
instance.volumes.each do |volume|
volume.create_snapshot
end
end
Working with different Regions
You can use blocks to wrap your calls for a specific Region
ec2.region('eu-west-1') do
#Run an instance in the eu-west-1 region
run_instance(...)
end
Using the library on an EC2 instance
There are two methods specifically for using a library on an EC2 instance
Awsum::Ec2#me
Awsum::Ec2#user_data
To extend the quick start example, you could do
#Create a snapshot of every volume of the currently running instance
ec2 = Awsum::Ec2.new(<access key>, <secret key>)
ec2.me.volumes.each do |volume|
volume.create_snapshot
end
Note:
Awsum is currently under active development and only supports EC2 at the moment.
Once EC2 is complete, I will focus on S3, SQS, CloudSpace and then others