module AWSS3Methods def load_s3 begin require 'aws/s3' rescue LoadError => e fail "You do not have aws-s3 installed." end end def assert_credentials(key, secret) load_s3 begin AWS::S3::Base.establish_connection!( :access_key_id => key, :secret_access_key => secret ) AWS::S3::Service.buckets rescue AWS::S3::ResponseError => e fail "Could not connect using AWS credentials in AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY. " + "Please make sure these are set in your environment." end end end World(AWSS3Methods)