19

I cloned an app folder from a GitHub repository, and after bundle install the gems, I tried to use the rake db:setup and rake db:migrate commands, neither worked, and here is my error message:

**arun997@promanager:~/workspace (master) $ rake db:setup
require 'rails/all'... 2.470s
Bundler.require... 7.590s
rake aborted!
Cannot load `Rails.application.database_configuration`:
Could not load database configuration. No such file - 
/usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.1.13/lib/rails/application/configuration.rb:105:in `database_configuration'
/usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.1.13/lib/active_record/railtie.rb:41:in `block (3 levels) in <class:Railtie>'
Could not load database configuration. No such file - 
/usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.1.13/lib/rails/application/configuration.rb:105:in `database_configuration'
/usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.1.13/lib/active_record/railtie.rb:41:in `block (3 levels) in <class:Railtie>'
Tasks: TOP => db:setup => db:schema:load_if_ruby => db:create => db:load_config
(See full trace by running task with --trace)**

If anyone can help with i would be eternally grateful.

The Fabio
  • 5,369
  • 1
  • 25
  • 55
Arun Anand
  • 201
  • 1
  • 2
  • 3

6 Answers6

22

Would your rails app be missing the file:

/your-app-path/config/database.yml

if so you can create a fresh one with these examples

The Fabio
  • 5,369
  • 1
  • 25
  • 55
6

Remove .example extension from .yml files

     database.yml.example -> database.yml
panwar001
  • 163
  • 1
  • 2
  • 14
3

For the ones that came here, right after cloning a Rails 5.2 (or newer) project, you might be missing the master.key file. Ask the project owner for the file.

At the folder your-rails-project/config/ you will have a credentials.yml.enc file. It is an encrypted file with the credentials of the project, which is decrypted with the key in the master.key file.

Rails needs to access the credentials file to be able to execute, even when only preparing the database (rails db:prepare, as in the bin/setup file).

For more info: https://guides.rubyonrails.org/security.html#custom-credentials.

rjmAmaro
  • 618
  • 8
  • 20
2

step: cp config/database.yml.example config/database.yml bundle check bundle install rails s again

BnakJM
  • 21
  • 2
2

I meet this problem, too. Opened my file: config, found in the file, have a file named "database.yml.example", but haven't file "database.yml". So I copy this file from the other project, and this problem solved.

hofffman
  • 41
  • 4
1

Restart spring:

bin/spring stop

bin/spring start

Spring is an in memory pre-loader for before performance. If you do something crazy like change your Rails application directory and then re git clone, the underlying directory that Spring owns will be internally different and that will cause this to fail. And you will think that you are going insane; you're not -- Spring can be a mild pissant at times.

fuzzygroup
  • 1,109
  • 12
  • 12