switch aws client libraries
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
require 'rubygems'
|
||||
require 'aws/s3'
|
||||
require 'aws-sdk/s3'
|
||||
|
||||
MAX_BACKUPS = 30
|
||||
|
||||
@@ -19,14 +19,15 @@ end
|
||||
|
||||
access_key = open("#{home}/.s3/access_key").read.strip
|
||||
secret_access_key = open("#{home}/.s3/secret_access_key").read.strip
|
||||
credentials = Aws::Credentials.new(access_key, secret_access_key)
|
||||
client = Aws::S3::Client.new(region: "us-west-2", credentials: credentials)
|
||||
bucket = "danbooru-backup"
|
||||
|
||||
AWS::S3::Base.establish_connection!(:access_key_id => access_key, :secret_access_key => secret_access_key, :server => "s3.amazonaws.com")
|
||||
|
||||
current_backups = AWS::S3::Bucket.find("danbooru-backup").objects.map {|x| x.key}.select {|x| x =~ /^db-/}.sort.reverse
|
||||
current_backups = client.list_objects(buckets: buckets).contents.map {|x| x.key}.select {|x| x =~ /^db-/}.sort.reverse
|
||||
|
||||
if current_backups.size > MAX_BACKUPS
|
||||
current_backups[MAX_BACKUPS..-1].each do |old_backup|
|
||||
AWS::S3::S3Object.delete(old_backup, "danbooru-backup")
|
||||
client.delete_object(bucket: bucket, key: old_backup)
|
||||
puts "Deleted old backup #{old_backup}"
|
||||
end
|
||||
end
|
||||
@@ -37,7 +38,7 @@ filename = data.mtime.strftime("db-%Y-%m-%d-%H-%M")
|
||||
tries = 0
|
||||
|
||||
begin
|
||||
AWS::S3::S3Object.store(filename, data, "danbooru-backup", :access => :private)
|
||||
client.put_object(bucket: bucket, key: filename, body: data, :acl => "private")
|
||||
rescue Errno::EPIPE
|
||||
tries += 1
|
||||
if tries > 3
|
||||
|
||||
Reference in New Issue
Block a user