简体   繁体   中英

Run rake task from outside RAILS_ROOT

My RAILS_ROOT is /usr/local/www/application/

If I run 'rake db:migrate RAILS_ENV=production" from within the RAILS_ROOT it works fine.

However I can't seem to find a way to run the same command from outside the RAILS_ROOT.

Try:

rake -f $RAILS_ROOT/Rakefile db:migrate RAILS_ENV=production
# Assuming you set the environment variable. 
# Else, just replace $RAILS_ROOT by actual value

I think you need to re-think your question. When running rake without specifying a rakefile, it's going to search in the current directory for said rakefile. In a directory besides RAILS_ROOT, it's going to find no rakefile or the wrong Rakefile

rake -rakefile /usr/local/www/application/Rakefile db:migrate RAILS_ENV=production might work (assuming the rake user guide is correct), though you may have to be in the directory for poorly designed plugins/library modifications.

尝试

cd /user/local/www/application && rake db:migrate RAILS_ENV=production

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM