我已经有一个可以在生产服务器上部署我的应用程序的deploy.rb。
我的应用程序包含一个自定义 rake 任务(lib/tasks 目录中的 .rake 文件)。
我想创建一个 cap 任务来远程运行该 rake 任务。
更明确一点,在你的\config\deploy.rb
,在任何任务或命名空间之外添加:
namespace :rake do
desc "Run a task on a remote server."
# run like: cap staging rake:invoke task=a_certain_task
task :invoke do
run("cd #{deploy_to}/current; /usr/bin/env rake #{ENV['task']} RAILS_ENV=#{rails_env}")
end
end
然后,从/rails_root/
,你可以运行:
cap staging rake:invoke task=rebuild_table_abc
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)