dmitriy-kiriyenko/soprano

View on GitHub
lib/soprano/smart_assets.rb

Summary

Maintainability
A
0 mins
Test Coverage
Capistrano::Configuration.instance(:must_exist).load do
  # This skips assets precompilation if nothing changed
  namespace :deploy do
    namespace :assets do
      task :precompile, :roles => :web, :except => { :no_release => true } do
        from = source.next_revision(current_revision)
        if capture("cd #{latest_release} && #{source.local.log(from)} vendor/assets/ app/assets/ lib/assets | wc -l").to_i > 0
          run %Q{cd #{latest_release} && #{rake} RAILS_ENV=#{rails_env} #{asset_env} assets:precompile}
        else
          logger.info "Skipping asset pre-compilation because there were no asset changes"
        end
      end
    end
  end
end