我正在尝试使用capistrano在远程服务器上运行我的种子文件。我的部署没问题,所以没有问题。以下是在config / deploy.rb
中运行种子文件的代码namespace :seed do
desc "Run a task on a remote server."
# run like: cap staging rake:invoke task=a_certain_task
task :default do
run("cd #{deploy_to}/current; /usr/bin/env bundle exec rake #{ENV['db:seed']} RAILS_ENV=#{rails_env}")
end
end
我通过运行'cap seed'来唤起这个任务。
当我运行它时,看起来测试正在运行,这很奇怪.. HERE是一个片段。
答案 0 :(得分:1)
问题可能出在#{ENV ['db:seed']}部分。不应该只是db:seed。 eniviroment变量db:seed不存在,因此您正在调用纯rake命令。
试试这个:
run("cd #{deploy_to}/current; /usr/bin/env bundle exec rake db:seed RAILS_ENV=#{rails_env}")