Module: Kilt::Upload::S3

Defined in:
lib/kilt/upload/s3.rb

Class Method Summary collapse

Class Method Details

.upload(type, file_reference) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/kilt/upload/s3.rb', line 4

def self.upload type, file_reference
  Kilt::Utils.ensure_s3_bucket_exists
  if file_reference
    begin
      s3 = AWS::S3.new(
        :access_key_id     => Kilt.config.s3.key,
        :secret_access_key => Kilt.config.s3.secret)   
      bucket = s3.buckets[Kilt.config.s3.bucket]
      new_file = bucket.objects["#{type}/#{file_reference.original_filename}"]
      new_file.write(Pathname.new(file_reference.tempfile), :acl => :public_read)
      file_reference.original_filename
    rescue
      ''
    end
  else
    ''
  end
end