class MovieMasher::S3UploadService
handles upload to S3
Public Instance Methods
__bucket_options(options)
click to toggle source
# File service/aws/s3_upload.rb, line 25 def __bucket_options(options) bucket_options = {} output_destination = options[:destination] bucket_options[:bucket] = output_destination[:bucket] if output_destination[:acl] bucket_options[:acl] = output_destination[:acl].gsub('_', '-') else puts "output_destination: #{output_destination}" end if options[:output] && options[:output][:mime_type] bucket_options[:content_type] = options[:output][:mime_type] end bucket_options end
upload(options)
click to toggle source
# File service/aws/s3_upload.rb, line 10 def upload(options) path = options[:file] key = Path.strip_slash_start(options[:path]) if File.directory?(options[:output][:rendered_file]) key = Path.concat(key, File.basename(path)) end bucket_options = __bucket_options(options) bucket_options[:key] = key # puts "put_object #{bucket_options}" File.open(path, 'rb') do |file| bucket_options[:body] = file s3_client.put_object(bucket_options) end end