capistranoで自動cleanupする時の注意点
capistranoでデプロイ先のreleaseフォルダをクリーニングするタスクにdeploy:cleanupがあります。
$ cap deploy:cleanup
コレを自動実行するためにdeploy.rbに次のように書くようアドバイスしているblogがいくつかあるようです。
after 'deploy:update', 'deploy:cleanup'
deploy:update後にdeploy:cleanupを実行しようとしてるんですが、私の手元の環境(capistrano 2.13.3, capistrano-ext 1.2.1)ではうまくフックできませんでした。
capistranoの実行結果を見ると、Currently executingにdeploy:updateは無いんですよね。
なのでフックするポイントを変更してみました。
after "deploy:restart", "deploy:cleanup"
今度はうまく実行できたようです。毎回手でcleanupするのは面倒なので早めに設定しておきましょう。