Skip to content

Instantly share code, notes, and snippets.

@dustMason
Created September 30, 2011 02:34
Show Gist options
  • Save dustMason/1252515 to your computer and use it in GitHub Desktop.
Save dustMason/1252515 to your computer and use it in GitHub Desktop.
Fix precompilation DB dependency
namespace :assets do
# Prepend the assets:precompile_prepare task to assets:precompile.
task :precompile => :precompile_prepare
# This task will be called before assets:precompile to optimize the
# compilation, i.e. to prevent any DB calls.
task 'precompile_prepare' do
# Without this assets:precompile will call itself again with this var set.
# This basically speeds things up.
# ENV['RAILS_GROUPS'] = 'assets'
# Devise uses this flag to prevent connecting to the db.
ENV['RAILS_ASSETS_PRECOMPILE'] = 'true'
# Prevent loading observers which will load the models which in turn may hit the DB.
module ActiveModel::Observing::ClassMethods
def instantiate_observers; end
end
# Prevent route drawing because certain gems might get called which will hit the DB.
class ActionDispatch::Routing::RouteSet
def draw; end
end
end
end
@emptyflask
Copy link

I can finally precompile my assets! Thanks for this.

@dustMason
Copy link
Author

dustMason commented Sep 30, 2011 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment