lib/massive_sitemap/writer/s3.rb in massive_sitemap-writer-s3-0.0.1.rc2 vs lib/massive_sitemap/writer/s3.rb in massive_sitemap-writer-s3-0.0.1.rc3
- old
+ new
@@ -1,6 +1,9 @@
+# Copyright (c) 2012, SoundCloud Ltd., Tobias Bielohlawek
+
require 's3'
+require 'retryable'
require 'massive_sitemap/writer/gzip_file'
module MassiveSitemap
module Writer
class S3 < MassiveSitemap::Writer::GzipFile
@@ -14,13 +17,14 @@
protected
def close_stream(stream)
@filename = filename
super
# upload to amazon
- # TODO what if fail??
- @bucket.objects.build(::File.basename(@filename)).tap do |object|
- object.content = ::File.open(@filename)
- object.save
+ retryable( :tries => 3 ) do
+ @bucket.objects.build(::File.basename(@filename)).tap do |object|
+ object.content = ::File.open(@filename)
+ object.save
+ end
end
end
def load_stream_ids
@bucket.objects.find_all.each do |object|