Skip to content

Instantly share code, notes, and snippets.

@maggit
Created June 10, 2014 00:35
Show Gist options
  • Save maggit/82b212f7bfd4c5519932 to your computer and use it in GitHub Desktop.
Save maggit/82b212f7bfd4c5519932 to your computer and use it in GitHub Desktop.
copy_s3_bucket.rb
#!/usr/bin/env ruby
#Script to copy content between to S3 buckets (from the same account or from different accounts)
require 'rubygems'
require 'aws-sdk'
# Get an instance of the S3 interface.
sourceS3 = AWS::S3.new(
:access_key_id => 'accesskey',
:secret_access_key => 'secret'
)
targetS3 = AWS::S3::new(
:access_key_id => 'accesskey',
:secret_access_key => 'secret'
)
bucket = sourceS3.buckets['bucket-copy-from']
targetBucket = targetS3.buckets['bucket-copy-to']
bucket.objects.each do |object|
obj = bucket.objects[object.key]
targetObj = targetBucket.objects[object.key]
targetObj.write(obj.read)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment