asset_sync 0.1.4 → 0.1.6

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/Gemfile CHANGED
@@ -1,3 +1,2 @@
1
1
  source :rubygems
2
-
3
2
  gemspec
data/README.md CHANGED
@@ -7,6 +7,41 @@ bucket, optionally deleting unused files and only uploading the files it needs t
7
7
 
8
8
  This was initially built and is intended to work on [Heroku](http://heroku.com)
9
9
 
10
+ ## KNOWN ISSUES (IMPORTANT)
11
+
12
+ We are currently trying to talk with Heroku to iron these out.
13
+
14
+ 1. Will not work on heroku on an application with a *RAILS_ENV* configured as anything other than production
15
+ 2. Will not work on heroku using ENV variables with the configuration as described below, you must hardcode all variables
16
+
17
+ ### 1. RAILS_ENV
18
+
19
+ When you see `rake assets:precompile` during deployment. Herok is actually running something like
20
+
21
+ env RAILS_ENV=production DATABASE_URL=scheme://user:pass@127.0.0.1/dbname bundle exec rake assets:precompile 2>&1
22
+
23
+ This means the *RAILS_ENV* you have set via *heroku:config* is not used.
24
+
25
+ **Workaround:** you could have just one S3 bucket dedicated to assets and ensure to set keep the existing remote files
26
+
27
+ AssetSync.configure do |config|
28
+ ...
29
+ config.aws_bucket = 'app-assets'
30
+ config.existing_remote_files = "keep"
31
+ end
32
+
33
+ ### 2. ENV varables not available
34
+
35
+ Currently when heroku runs `rake assets:precompile` during deployment. It does not load your Rails application's environment config. This means using any **ENV** variables you could normally depend on are not available.
36
+
37
+ **Workaround:** you could just hardcode your AWS credentials in the initializer or yml
38
+
39
+ AssetSync.configure do |config|
40
+ config.aws_access_key = 'xxx'
41
+ config.aws_access_secret = 'xxx'
42
+ config.aws_bucket = 'mybucket'
43
+ end
44
+
10
45
  ## Installation
11
46
 
12
47
  Add the gem to your Gemfile
@@ -1,6 +1,8 @@
1
1
  module AssetSync
2
2
  class Storage
3
3
 
4
+ class BucketNotFound < StandardError; end
5
+
4
6
  attr_accessor :config
5
7
 
6
8
  def initialize(cfg)
@@ -28,6 +30,7 @@ module AssetSync
28
30
  end
29
31
 
30
32
  def get_remote_files
33
+ raise BucketNotFound.new("AWS Bucket: #{self.config.aws_bucket} not found.") unless bucket
31
34
  return bucket.files.map { |f| f.key }
32
35
  end
33
36
 
@@ -1,3 +1,3 @@
1
1
  module AssetSync
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.6"
3
3
  end
metadata CHANGED
@@ -1,85 +1,81 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: asset_sync
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.6
4
5
  prerelease:
5
- version: 0.1.4
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Simon Hamilton
9
9
  - David Rice
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
-
14
- date: 2011-08-30 00:00:00 +01:00
15
- default_executable:
16
- dependencies:
17
- - !ruby/object:Gem::Dependency
13
+ date: 2011-08-30 00:00:00.000000000Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
18
16
  name: fog
19
- prerelease: false
20
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &70173874548220 !ruby/object:Gem::Requirement
21
18
  none: false
22
- requirements:
23
- - - ">="
24
- - !ruby/object:Gem::Version
25
- version: "0"
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
26
23
  type: :runtime
27
- version_requirements: *id001
28
- - !ruby/object:Gem::Dependency
29
- name: activemodel
30
24
  prerelease: false
31
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *70173874548220
26
+ - !ruby/object:Gem::Dependency
27
+ name: activemodel
28
+ requirement: &70173874547760 !ruby/object:Gem::Requirement
32
29
  none: false
33
- requirements:
34
- - - ">="
35
- - !ruby/object:Gem::Version
36
- version: "0"
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
37
34
  type: :runtime
38
- version_requirements: *id002
39
- - !ruby/object:Gem::Dependency
40
- name: rspec
41
35
  prerelease: false
42
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *70173874547760
37
+ - !ruby/object:Gem::Dependency
38
+ name: rspec
39
+ requirement: &70173874547260 !ruby/object:Gem::Requirement
43
40
  none: false
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: "0"
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
48
45
  type: :development
49
- version_requirements: *id003
50
- - !ruby/object:Gem::Dependency
51
- name: bundler
52
46
  prerelease: false
53
- requirement: &id004 !ruby/object:Gem::Requirement
47
+ version_requirements: *70173874547260
48
+ - !ruby/object:Gem::Dependency
49
+ name: bundler
50
+ requirement: &70173874540440 !ruby/object:Gem::Requirement
54
51
  none: false
55
- requirements:
56
- - - ">="
57
- - !ruby/object:Gem::Version
58
- version: "0"
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
59
56
  type: :development
60
- version_requirements: *id004
61
- - !ruby/object:Gem::Dependency
62
- name: jeweler
63
57
  prerelease: false
64
- requirement: &id005 !ruby/object:Gem::Requirement
58
+ version_requirements: *70173874540440
59
+ - !ruby/object:Gem::Dependency
60
+ name: jeweler
61
+ requirement: &70173874540020 !ruby/object:Gem::Requirement
65
62
  none: false
66
- requirements:
67
- - - ">="
68
- - !ruby/object:Gem::Version
69
- version: "0"
63
+ requirements:
64
+ - - ! '>='
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
70
67
  type: :development
71
- version_requirements: *id005
72
- description: After you run assets:precompile your assets will be synchronised with your S3 bucket, deleting unused files and only uploading the files it needs to.
73
- email:
68
+ prerelease: false
69
+ version_requirements: *70173874540020
70
+ description: After you run assets:precompile your assets will be synchronised with
71
+ your S3 bucket, deleting unused files and only uploading the files it needs to.
72
+ email:
74
73
  - shamilton@rumblelabs.com
75
74
  - me@davidjrice.co.uk
76
75
  executables: []
77
-
78
76
  extensions: []
79
-
80
77
  extra_rdoc_files: []
81
-
82
- files:
78
+ files:
83
79
  - .gitignore
84
80
  - Gemfile
85
81
  - README.md
@@ -97,35 +93,31 @@ files:
97
93
  - spec/asset_sync_spec.rb
98
94
  - spec/spec_helper.rb
99
95
  - spec/with_yml/config/asset_sync.yml
100
- has_rdoc: true
101
96
  homepage: https://github.com/rumblelabs/asset_sync
102
97
  licenses: []
103
-
104
98
  post_install_message:
105
99
  rdoc_options: []
106
-
107
- require_paths:
100
+ require_paths:
108
101
  - lib
109
- required_ruby_version: !ruby/object:Gem::Requirement
102
+ required_ruby_version: !ruby/object:Gem::Requirement
110
103
  none: false
111
- requirements:
112
- - - ">="
113
- - !ruby/object:Gem::Version
114
- version: "0"
115
- required_rubygems_version: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - ! '>='
106
+ - !ruby/object:Gem::Version
107
+ version: '0'
108
+ required_rubygems_version: !ruby/object:Gem::Requirement
116
109
  none: false
117
- requirements:
118
- - - ">="
119
- - !ruby/object:Gem::Version
120
- version: "0"
110
+ requirements:
111
+ - - ! '>='
112
+ - !ruby/object:Gem::Version
113
+ version: '0'
121
114
  requirements: []
122
-
123
115
  rubyforge_project: asset_sync
124
- rubygems_version: 1.6.2
116
+ rubygems_version: 1.8.10
125
117
  signing_key:
126
118
  specification_version: 3
127
119
  summary: Synchronises Assets between Rails and S3
128
- test_files:
120
+ test_files:
129
121
  - spec/asset_sync_spec.rb
130
122
  - spec/spec_helper.rb
131
123
  - spec/with_yml/config/asset_sync.yml