fix amazonbackup script, trap on epipe exception for db backup
This commit is contained in:
@@ -20,7 +20,7 @@ end
|
||||
access_key = open("#{home}/.s3/access_key").read.strip
|
||||
secret_access_key = open("#{home}/.s3/secret_access_key").read.strip
|
||||
|
||||
AWS::S3::Base.establish_connection!(:access_key_id => access_key, :secret_access_key => secret_access_key)
|
||||
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
|
||||
|
||||
@@ -34,5 +34,17 @@ end
|
||||
backup = Dir["/var/www/danbooru2/shared/backup/db-*.dump"].sort.last
|
||||
data = File.open(backup, "rb")
|
||||
filename = data.mtime.strftime("db-%Y-%m-%d-%H-%M")
|
||||
AWS::S3::S3Object.store(filename, data, "danbooru-backup", :access => :private)
|
||||
tries = 0
|
||||
|
||||
begin
|
||||
AWS::S3::S3Object.store(filename, data, "danbooru-backup", :access => :private)
|
||||
rescue Errno::EPIPE
|
||||
tries += 1
|
||||
if tries > 3
|
||||
raise
|
||||
else
|
||||
retry
|
||||
end
|
||||
end
|
||||
|
||||
puts "Uploaded #{backup} as #{filename}"
|
||||
|
||||
Reference in New Issue
Block a user