asset_sync 0.4.2 → 0.4.3
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 +1 -0
- data/.travis.yml +10 -0
- data/Gemfile +3 -1
- data/README.md +13 -8
- data/asset_sync.gemspec +2 -2
- data/lib/asset_sync/storage.rb +3 -2
- data/lib/asset_sync/version.rb +1 -1
- metadata +44 -14
    
        data/.gitignore
    CHANGED
    
    
    
        data/.travis.yml
    CHANGED
    
    
    
        data/Gemfile
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | @@ -4,7 +4,7 @@ | |
| 4 4 |  | 
| 5 5 | 
             
            Synchronises Assets between Rails and S3.
         | 
| 6 6 |  | 
| 7 | 
            -
            Asset Sync is built to run with the new Rails Asset Pipeline feature introduced in **Rails 3.1**.  After you run __bundle exec rake assets:precompile__ your assets will be synchronised to your S3 | 
| 7 | 
            +
            Asset Sync is built to run with the new Rails Asset Pipeline feature introduced in **Rails 3.1**.  After you run __bundle exec rake assets:precompile__ your assets will be synchronised to your S3
         | 
| 8 8 | 
             
            bucket, optionally deleting unused files and only uploading the files it needs to.
         | 
| 9 9 |  | 
| 10 10 | 
             
            This was initially built and is intended to work on [Heroku](http://heroku.com) but can work on any platform.
         | 
| @@ -19,7 +19,6 @@ Previously there were [several issues](http://github.com/rumblelabs/asset_sync/b | |
| 19 19 |  | 
| 20 20 | 
             
            Now to get everything working smoothly with using **ENV** variables to configure `asset_sync` we just need to enable the [user\_env\_compile](http://devcenter.heroku.com/articles/labs-user-env-compile) functionality. In short:
         | 
| 21 21 |  | 
| 22 | 
            -
                heroku plugins:install https://github.com/heroku/heroku-labs.git
         | 
| 23 22 | 
             
                heroku labs:enable user_env_compile -a myapp
         | 
| 24 23 |  | 
| 25 24 | 
             
            Hopefully this will make it's way into the platform as standard.
         | 
| @@ -46,7 +45,7 @@ end | |
| 46 45 | 
             
            This is good practice when pre-compiling your assets as it will reduce load time and server memory in production. The only caveat being, you may not be able to use a custom initializer, without perhaps wrapping it with.
         | 
| 47 46 |  | 
| 48 47 | 
             
            ``` ruby
         | 
| 49 | 
            -
            defined?(AssetSync) | 
| 48 | 
            +
            if defined?(AssetSync)
         | 
| 50 49 | 
             
            ...
         | 
| 51 50 | 
             
            end
         | 
| 52 51 | 
             
            ```
         | 
| @@ -61,9 +60,15 @@ S3 as the asset host and ensure precompiling is enabled. | |
| 61 60 |  | 
| 62 61 | 
             
            ``` ruby
         | 
| 63 62 | 
             
              #config/environments/production.rb
         | 
| 64 | 
            -
              config.action_controller.asset_host =  | 
| 65 | 
            -
             | 
| 66 | 
            -
             | 
| 63 | 
            +
              config.action_controller.asset_host = "//#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
         | 
| 64 | 
            +
            ```
         | 
| 65 | 
            +
             | 
| 66 | 
            +
            On **HTTPS**: the exclusion of any protocol in the asset host declaration above will allow browsers to choose the transport mechanism on the fly. So if your application is available under both HTTP and HTTPS the assets will be served to match.
         | 
| 67 | 
            +
             | 
| 68 | 
            +
            > The only caveat with this is that your S3 bucket name **must not contain any periods** so, mydomain.com.s3.amazonaws.com for example would not work under HTTPS as SSL certificates from Amazon would interpret our bucket name as **not** a subdomain of s3.amazonaws.com, but a multi level subdomain. To avoid this don't use a period in your subdomain or switch to the other style of S3 URL.
         | 
| 69 | 
            +
             | 
| 70 | 
            +
            ``` ruby
         | 
| 71 | 
            +
              config.action_controller.asset_host = "//s3.amazonaws.com/#{ENV['FOG_DIRECTORY']}" 
         | 
| 67 72 | 
             
            ```
         | 
| 68 73 |  | 
| 69 74 | 
             
            Also, ensure the following are defined (in production.rb or application.rb)
         | 
| @@ -152,7 +157,7 @@ AssetSync.configure do |config| | |
| 152 157 | 
             
              # Automatically replace files with their equivalent gzip compressed version
         | 
| 153 158 | 
             
              # config.gzip_compression = true
         | 
| 154 159 | 
             
              #
         | 
| 155 | 
            -
              # Use the Rails generated 'manifest.yml' file to produce the list of files to | 
| 160 | 
            +
              # Use the Rails generated 'manifest.yml' file to produce the list of files to
         | 
| 156 161 | 
             
              # upload instead of searching the assets directory.
         | 
| 157 162 | 
             
              # config.manifest = true
         | 
| 158 163 | 
             
              #
         | 
| @@ -326,4 +331,4 @@ Inspired by: | |
| 326 331 |  | 
| 327 332 | 
             
            ## License
         | 
| 328 333 |  | 
| 329 | 
            -
            MIT License. Copyright 2011 Rumble Labs Ltd. [rumblelabs.com](http://rumblelabs.com)
         | 
| 334 | 
            +
            MIT License. Copyright 2011 Rumble Labs Ltd. [rumblelabs.com](http://rumblelabs.com)
         | 
    
        data/asset_sync.gemspec
    CHANGED
    
    | @@ -6,8 +6,8 @@ require "asset_sync/version" | |
| 6 6 | 
             
            Gem::Specification.new do |s|
         | 
| 7 7 | 
             
              s.name        = "asset_sync"
         | 
| 8 8 | 
             
              s.version     = AssetSync::VERSION
         | 
| 9 | 
            -
              s.date        = "2012- | 
| 10 | 
            -
              s.platform    = Gem::Platform::RUBY | 
| 9 | 
            +
              s.date        = "2012-08-19"
         | 
| 10 | 
            +
              s.platform    = Gem::Platform::RUBY
         | 
| 11 11 | 
             
              s.authors     = ["Simon Hamilton", "David Rice", "Phil McClure"]
         | 
| 12 12 | 
             
              s.email       = ["shamilton@rumblelabs.com", "me@davidjrice.co.uk", "pmcclure@rumblelabs.com"]
         | 
| 13 13 | 
             
              s.homepage    = "https://github.com/rumblelabs/asset_sync"
         | 
    
        data/lib/asset_sync/storage.rb
    CHANGED
    
    | @@ -104,12 +104,13 @@ module AssetSync | |
| 104 104 |  | 
| 105 105 | 
             
                def upload_file(f)
         | 
| 106 106 | 
             
                  # TODO output files in debug logs as asset filename only.
         | 
| 107 | 
            +
                  one_year = 31557600
         | 
| 107 108 | 
             
                  file = {
         | 
| 108 109 | 
             
                    :key => f,
         | 
| 109 110 | 
             
                    :body => File.open("#{path}/#{f}"),
         | 
| 110 111 | 
             
                    :public => true,
         | 
| 111 | 
            -
                    :cache_control => "public, max-age | 
| 112 | 
            -
                    :expires => CGI.rfc1123_date(Time.now +  | 
| 112 | 
            +
                    :cache_control => "public, max-age=#{one_year}",
         | 
| 113 | 
            +
                    :expires => CGI.rfc1123_date(Time.now + one_year)
         | 
| 113 114 | 
             
                  }
         | 
| 114 115 |  | 
| 115 116 | 
             
                  gzipped = "#{path}/#{f}.gz"
         | 
    
        data/lib/asset_sync/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: asset_sync
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.4. | 
| 4 | 
            +
              version: 0.4.3
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 6 | 
             
            platform: ruby
         | 
| 7 7 | 
             
            authors:
         | 
| @@ -11,11 +11,11 @@ authors: | |
| 11 11 | 
             
            autorequire: 
         | 
| 12 12 | 
             
            bindir: bin
         | 
| 13 13 | 
             
            cert_chain: []
         | 
| 14 | 
            -
            date: 2012- | 
| 14 | 
            +
            date: 2012-08-19 00:00:00.000000000 Z
         | 
| 15 15 | 
             
            dependencies:
         | 
| 16 16 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 17 17 | 
             
              name: fog
         | 
| 18 | 
            -
              requirement:  | 
| 18 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 19 19 | 
             
                none: false
         | 
| 20 20 | 
             
                requirements:
         | 
| 21 21 | 
             
                - - ! '>='
         | 
| @@ -23,10 +23,15 @@ dependencies: | |
| 23 23 | 
             
                    version: '0'
         | 
| 24 24 | 
             
              type: :runtime
         | 
| 25 25 | 
             
              prerelease: false
         | 
| 26 | 
            -
              version_requirements:  | 
| 26 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 27 | 
            +
                none: false
         | 
| 28 | 
            +
                requirements:
         | 
| 29 | 
            +
                - - ! '>='
         | 
| 30 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 31 | 
            +
                    version: '0'
         | 
| 27 32 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 33 | 
             
              name: activemodel
         | 
| 29 | 
            -
              requirement:  | 
| 34 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 35 | 
             
                none: false
         | 
| 31 36 | 
             
                requirements:
         | 
| 32 37 | 
             
                - - ! '>='
         | 
| @@ -34,10 +39,15 @@ dependencies: | |
| 34 39 | 
             
                    version: '0'
         | 
| 35 40 | 
             
              type: :runtime
         | 
| 36 41 | 
             
              prerelease: false
         | 
| 37 | 
            -
              version_requirements:  | 
| 42 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 43 | 
            +
                none: false
         | 
| 44 | 
            +
                requirements:
         | 
| 45 | 
            +
                - - ! '>='
         | 
| 46 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            +
                    version: '0'
         | 
| 38 48 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 39 49 | 
             
              name: rspec
         | 
| 40 | 
            -
              requirement:  | 
| 50 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 41 51 | 
             
                none: false
         | 
| 42 52 | 
             
                requirements:
         | 
| 43 53 | 
             
                - - ! '>='
         | 
| @@ -45,10 +55,15 @@ dependencies: | |
| 45 55 | 
             
                    version: '0'
         | 
| 46 56 | 
             
              type: :development
         | 
| 47 57 | 
             
              prerelease: false
         | 
| 48 | 
            -
              version_requirements:  | 
| 58 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 59 | 
            +
                none: false
         | 
| 60 | 
            +
                requirements:
         | 
| 61 | 
            +
                - - ! '>='
         | 
| 62 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 63 | 
            +
                    version: '0'
         | 
| 49 64 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 50 65 | 
             
              name: bundler
         | 
| 51 | 
            -
              requirement:  | 
| 66 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 52 67 | 
             
                none: false
         | 
| 53 68 | 
             
                requirements:
         | 
| 54 69 | 
             
                - - ! '>='
         | 
| @@ -56,10 +71,15 @@ dependencies: | |
| 56 71 | 
             
                    version: '0'
         | 
| 57 72 | 
             
              type: :development
         | 
| 58 73 | 
             
              prerelease: false
         | 
| 59 | 
            -
              version_requirements:  | 
| 74 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 75 | 
            +
                none: false
         | 
| 76 | 
            +
                requirements:
         | 
| 77 | 
            +
                - - ! '>='
         | 
| 78 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 79 | 
            +
                    version: '0'
         | 
| 60 80 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 61 81 | 
             
              name: jeweler
         | 
| 62 | 
            -
              requirement:  | 
| 82 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 63 83 | 
             
                none: false
         | 
| 64 84 | 
             
                requirements:
         | 
| 65 85 | 
             
                - - ! '>='
         | 
| @@ -67,7 +87,12 @@ dependencies: | |
| 67 87 | 
             
                    version: '0'
         | 
| 68 88 | 
             
              type: :development
         | 
| 69 89 | 
             
              prerelease: false
         | 
| 70 | 
            -
              version_requirements:  | 
| 90 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 91 | 
            +
                none: false
         | 
| 92 | 
            +
                requirements:
         | 
| 93 | 
            +
                - - ! '>='
         | 
| 94 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 95 | 
            +
                    version: '0'
         | 
| 71 96 | 
             
            description: After you run assets:precompile your compiled assets will be synchronised
         | 
| 72 97 | 
             
              with your S3 bucket.
         | 
| 73 98 | 
             
            email:
         | 
| @@ -116,15 +141,21 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 116 141 | 
             
              - - ! '>='
         | 
| 117 142 | 
             
                - !ruby/object:Gem::Version
         | 
| 118 143 | 
             
                  version: '0'
         | 
| 144 | 
            +
                  segments:
         | 
| 145 | 
            +
                  - 0
         | 
| 146 | 
            +
                  hash: -3610501310957449619
         | 
| 119 147 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 120 148 | 
             
              none: false
         | 
| 121 149 | 
             
              requirements:
         | 
| 122 150 | 
             
              - - ! '>='
         | 
| 123 151 | 
             
                - !ruby/object:Gem::Version
         | 
| 124 152 | 
             
                  version: '0'
         | 
| 153 | 
            +
                  segments:
         | 
| 154 | 
            +
                  - 0
         | 
| 155 | 
            +
                  hash: -3610501310957449619
         | 
| 125 156 | 
             
            requirements: []
         | 
| 126 157 | 
             
            rubyforge_project: asset_sync
         | 
| 127 | 
            -
            rubygems_version: 1.8. | 
| 158 | 
            +
            rubygems_version: 1.8.24
         | 
| 128 159 | 
             
            signing_key: 
         | 
| 129 160 | 
             
            specification_version: 3
         | 
| 130 161 | 
             
            summary: Synchronises Assets in a Rails 3 application and Amazon S3/Cloudfront and
         | 
| @@ -138,4 +169,3 @@ test_files: | |
| 138 169 | 
             
            - spec/rackspace_with_yml/config/asset_sync.yml
         | 
| 139 170 | 
             
            - spec/spec_helper.rb
         | 
| 140 171 | 
             
            - spec/storage_spec.rb
         | 
| 141 | 
            -
            has_rdoc: 
         |