在capistrano部署之后运行Raketask

时间:2015-03-13 09:52:13

标签: ruby-on-rails deployment rake-task

部署完成后如何运行rake任务?

我尝试了以下内容:

namespace :add_records do
  desc "Run a task on a remote server."
    task :default do
  run("cd #{deploy_to}/current; /usr/bin/env bundle exec rake my_task_group:test_records RAILS_ENV=#{rails_env}")
end 

在部署期间执行任务但导致错误。 我知道任务必须在部署之后而不是在部署期间运行。

如何解决?

1 个答案:

答案 0 :(得分:1)

在部署的最后一步之后,在deploy.rb中运行它:

after :last_task_in_deploy, :task_you_want_to_run

如果部署完成就足够了,并且不需要重新启动服务器,请运行:publish

  after :publish, :task_you_want_to_run