動かざることバグの如し

近づきたいよ 君の理想に

Capistrano3のデフォルトのデプロイタスクをoverrideする方法

環境

やりたいこと

Capistranoにはデフォルトでdeploy: やgit:でたくさんのタスクが用意されていて、cap production deployでいろんなタスクが実行されるが、一部のタスクをオレオレにカスタマイズしたかった

方法

公式サイトにトピックがあった

deploy.rbの任意の場所で以下

Rake::Task["deploy:log_revision"].clear_actions

これでタスクの中が空になる

で、以下のように再定義してあげると定義したタスクが同じタイミングで実行される やったね

namespace :deploy do
  
  task :log_revision do |t|
    on roles(:all) do |s|
      info "yeahhhhhhhhhhhhhhhh"
    end
  end
end