Skip to content

Instantly share code, notes, and snippets.

@dustMason
Created September 30, 2011 02:34
Show Gist options
  • Select an option

  • Save dustMason/1252515 to your computer and use it in GitHub Desktop.

Select an option

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
Copy Markdown

I can finally precompile my assets! Thanks for this.

@dustMason
Copy link
Copy Markdown
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