paperclip-s3 1.0.0pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.gitignore ADDED
@@ -0,0 +1,4 @@
1
+ *.gem
2
+ .bundle
3
+ Gemfile.lock
4
+ pkg/*
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in paperclip-s3.gemspec
4
+ gemspec
data/README.textile ADDED
@@ -0,0 +1,15 @@
1
+ h1. Paperclip S3 Storage
2
+
3
+ This gem will force paperclip to store attachments on S3. It's great for "Heroku":http://heroku.com apps and thats basically why I wrote it.
4
+
5
+ I was really lazy writing this over and over again, so I just gemed it.
6
+
7
+ h1. Important Notes
8
+
9
+ If you're in fact using "Heroku":http://heroku.com, and you want the attachments to have custom paths. *PLEASE* do not use *RAILS_ROOT*. Why? Every time you deploy your app to "Heroku":http://heroku.com, you're changing the RAILS_ROOT, so all your uploaded files will be lost and your bucket *WILL* be a mess!
10
+
11
+ A default, Heroku-working path is on by default, so you can just use it.
12
+
13
+ h2. Contribute
14
+
15
+ Feel free to fork, fix/patch/extend this. Everything is welcome.
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require 'bundler/gem_tasks'
@@ -0,0 +1,25 @@
1
+ require "paperclip-s3/version"
2
+
3
+ module Paperclip
4
+ module S3
5
+
6
+ # Extends the paperclips has_attached_file method
7
+ # It will use S3 Storage. The credentials will be read from the environment
8
+ def has_attached_file(name, options = {})
9
+ options[:storage] ||= :s3
10
+ options[:path] ||= "/:class-:attachment/:id/:style-:basename.:extension"
11
+ options[:bucket] ||= ENV["S3_BUCKET"]
12
+ options[:s3_credentials] ||= {
13
+ :access_key_id => ENV['S3_KEY'],
14
+ :secret_access_key => ENV['S3_SECRET']
15
+ }
16
+ super(name, options)
17
+ end
18
+
19
+
20
+ end
21
+ end
22
+
23
+ if defined?(ActiveRecord) and defined?(Rails)
24
+ ActiveRecord::Base.send :extend, Paperclip::S3 if Rails.env.production?
25
+ end
@@ -0,0 +1,5 @@
1
+ module Paperclip
2
+ module S3
3
+ VERSION = "1.0.0pre"
4
+ end
5
+ end
@@ -0,0 +1,23 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "paperclip-s3/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "paperclip-s3"
7
+ s.version = Paperclip::S3::VERSION
8
+ s.authors = ["Nicolás Hock Isaza"]
9
+ s.email = ["nhocki@gmail.com"]
10
+ s.homepage = ""
11
+ s.summary = %q{Simple gem that makes paperclip save the attachments on Amazon S3 for a production Rails application.}
12
+ s.description = %q{The gem will simply extend the has_attached_file to make it store on Amazon S3 when the application is on production. Great for Heroku applications.}
13
+
14
+ s.rubyforge_project = "paperclip-s3"
15
+
16
+ s.add_dependency('paperclip', '~> 2.3.11')
17
+ s.add_dependency('aws-s3', '~> 0.6.2')
18
+
19
+ s.files = `git ls-files`.split("\n")
20
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
21
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
22
+ s.require_paths = ["lib"]
23
+ end
metadata ADDED
@@ -0,0 +1,84 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: paperclip-s3
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: 5
5
+ version: 1.0.0pre
6
+ platform: ruby
7
+ authors:
8
+ - "Nicol\xC3\xA1s Hock Isaza"
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2011-06-08 00:00:00 -05:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: paperclip
18
+ prerelease: false
19
+ requirement: &id001 !ruby/object:Gem::Requirement
20
+ none: false
21
+ requirements:
22
+ - - ~>
23
+ - !ruby/object:Gem::Version
24
+ version: 2.3.11
25
+ type: :runtime
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ name: aws-s3
29
+ prerelease: false
30
+ requirement: &id002 !ruby/object:Gem::Requirement
31
+ none: false
32
+ requirements:
33
+ - - ~>
34
+ - !ruby/object:Gem::Version
35
+ version: 0.6.2
36
+ type: :runtime
37
+ version_requirements: *id002
38
+ description: The gem will simply extend the has_attached_file to make it store on Amazon S3 when the application is on production. Great for Heroku applications.
39
+ email:
40
+ - nhocki@gmail.com
41
+ executables: []
42
+
43
+ extensions: []
44
+
45
+ extra_rdoc_files: []
46
+
47
+ files:
48
+ - .gitignore
49
+ - Gemfile
50
+ - README.textile
51
+ - Rakefile
52
+ - lib/paperclip-s3.rb
53
+ - lib/paperclip-s3/version.rb
54
+ - paperclip-s3.gemspec
55
+ has_rdoc: true
56
+ homepage: ""
57
+ licenses: []
58
+
59
+ post_install_message:
60
+ rdoc_options: []
61
+
62
+ require_paths:
63
+ - lib
64
+ required_ruby_version: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: "0"
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">"
74
+ - !ruby/object:Gem::Version
75
+ version: 1.3.1
76
+ requirements: []
77
+
78
+ rubyforge_project: paperclip-s3
79
+ rubygems_version: 1.3.9.1
80
+ signing_key:
81
+ specification_version: 3
82
+ summary: Simple gem that makes paperclip save the attachments on Amazon S3 for a production Rails application.
83
+ test_files: []
84
+