RightScale Ruby library to access Amazon CloudFront, EC2, S3, SQS, and SDB

Sample Code & Libraries>Ruby>RightScale Ruby library to access Amazon CloudFront, EC2, S3, SQS, and SDB
Community Contributed Software

  • Amazon Web Services provides links to these packages as a convenience for our customers, but software not authored by an "@AWS" account has not been reviewed or screened by AWS.
  • Please review this software to ensure it meets your needs before using it.

RightScale's AWS gems provide Ruby interfaces to four key Amazon Web Services: CloudFront, EC2, S3, SQS and SDB. An optional robust HTTP layer retries and clears transient errors.

Details

Submitted By: Thorsten von Eicken
AWS Products Used: Amazon CloudFront, Amazon EC2, Amazon S3, Amazon SQS, Amazon SimpleDB
Language(s): Ruby
License: MIT License
Created On: October 22, 2007 10:32 PM GMT
Last Updated: November 25, 2008 6:12 PM GMT
Download

RightScale's AWS gems provide Ruby interfaces to five key Amazon Web Services: CloudFront, EC2, S3, SQS, and SDB. The gems use Amazon's REST and query interfaces to provide full programmatic control. An optional HTTP layer retries and clears transient errors.

These Gems have been used in production by RightScale since February 2007 and are continuously improved and updated with any new features offered by Amazon. When we started with AWS we had no choice but to write our own Gems and we're glad to make them available to the Ruby community. The design goals for these gems are:

  • Full programmmatic access to CloudFront, EC2, S3, SQS, and SDB.
  • Complete error handling: all operations check for errors and report complete error information by raising an AwsError.
  • Persistent HTTP connections with network-level retry layer using RightHttpConnection. This includes socket timeouts and retries.
  • HTTP-level retry layer. Certain (user-adjustable) HTTP errors returned by Amazon's services are classified as temporary errors. These errors are automaticallly retried using exponentially increasing intervals. The number of retries is user-configurable.
  • Fast REXML-based parsing of responses (as fast as a pure Ruby solution allows).
  • Uses libxml (if available) for faster response parsing.
  • Support for large S3 list operations. Buckets and key subfolders containing many (> 1000) keys are listed in entirety. Operations based on list (like bucket clear) work on arbitrary numbers of keys.
  • Support for streaming GETs from S3, and streaming PUTs to S3 if the data source is a file.
  • Support for 5GB objects in S3, upload using "Expect:100-continue" header.
  • Support for single-threaded usage, multithreaded usage, as well as usage with multiple AWS accounts.
  • Test suite (requires AWS account to do "live" testing).

RDoc for the right_aws and right_http_connection gems is available on RubyForge at http://rightaws.rubyforge.org. Downloads are from the RubyForge project page.

These Gems are supported by RightScale Inc, please email support@rightscale.com with requests for help or suggestions. We will do our best to respond to bug reports quickly, of course we always appreciate patches!


Thorsten von Eicken

Comments

Demonstrates a solid Commitment to Open Source Goals
The work RightScale does on this Ruby gem show that they care about the Open Source support for Cloud Computing. I know that lots of work goes into the development and testing of code of this quality. Thank you for your support and keep the new versions and updates rolling. You have provided my development projects with a strong platform to interface AWS Cloud Computing Services.
Edward Goldberg on October 18, 2008 9:05 PM GMT
Solid gem
This is far more robust than the simple libraries Amazon released, I highly recommend checking it out... If for nothing else than it throwing proper errors instead of just raising a standard exception.
pretheory on July 3, 2008 12:18 AM GMT
worked great
I installed the gems, followed the rdoc that came with them, and was up and running in 15 minutes. I've only tried to SDB interface, but it worked perfectly. Thanks for the great implementation!
Mike Lenner on February 18, 2008 5:43 PM GMT
We are temporarily not accepting new comments.
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.