Skip to content

Instantly share code, notes, and snippets.

@brettfishman
Created March 27, 2013 05:31
Show Gist options
  • Save brettfishman/5251931 to your computer and use it in GitHub Desktop.
Save brettfishman/5251931 to your computer and use it in GitHub Desktop.
Rails 3.2 autoload_paths mystery
# In application.rb
config.autoload_paths += %W(#{config.root}/lib/oauth_providers)
# In lib I have a directory (oauth_providers) with a file named oauth_provider.rb:
# lib/oauth_providers/oauth_provider.rb
module OauthProviders
class OauthProvider
def self.instantiate(name)
klass = "OauthProviders::#{name}".constantize
klass.new
end
end
end
# When attempting to deploy to production env, we get
# rake aborted!
# uninitialized constant OAuthProviders::OAuthProvider
# /home/manilla/cypress/releases/20130327042026/lib/oauth_providers/yahoo.rb:2:in `<module:OAuthProviders>'
# /home/manilla/cypress/releases/20130327042026/lib/oauth_providers/yahoo.rb:1:in `<top (required)>'
# /home/manilla/cypress/releases/20130327042026/config/initializers/auto_require.rb:4:in `block (2 levels) in <top (required)>'
# /home/manilla/cypress/releases/20130327042026/config/initializers/auto_require.rb:3:in `each'
# /home/manilla/cypress/releases/20130327042026/config/initializers/auto_require.rb:3:in `block in <top (required)>'
# /home/manilla/cypress/releases/20130327042026/config/initializers/auto_require.rb:2:in `each'
# /home/manilla/cypress/releases/20130327042026/config/initializers/auto_require.rb:2:in `<top (required)>'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/engine.rb:588:in `block (2 levels) in <class:Engine>'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/engine.rb:587:in `each'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/engine.rb:587:in `block in <class:Engine>'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/initializable.rb:30:in `instance_exec'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/initializable.rb:30:in `run'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/initializable.rb:55:in `block in run_initializers'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/initializable.rb:54:in `each'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/initializable.rb:54:in `run_initializers'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/application.rb:136:in `initialize!'
# /home/manilla/cypress/shared/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/railtie/configurable.rb:30:in `method_missing'
# /home/manilla/cypress/releases/20130327042026/config/environment.rb:59:in `<top (required)>'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment