如何在另一个舞台上运行capistrano任务?

时间:2015-08-05 08:20:53

标签: capistrano capistrano3

我的root capistrano有一个转储数据库的任务:cap production dumpcap staging dump将转储数据库。

现在,我想在暂存中定义一个将在生产中运行此任务的任务。

我能做到

desc 'Updates the database of acceptance with the latest production database'
task :update_db do
  run_locally do
    execute :cap, 'production', 'dump'
    # move dump-file from production, via local, to acceptance
  end
  on roles(:db) do
    execute :rake, 'db:data:load'
  end
end

但是通过shell从cap任务中运行一个cap任务感觉很难看 脆弱。

我找到了 Calling a multistage capistrano task from within a capistrano task 但这不起作用,可能是因为它是旧的解决方案 卡皮斯特拉诺的版本。

有没有办法在某个“舞台”上运行某个capistrano任务 来自卡皮斯特拉诺?

0 个答案:

没有答案