たとえば、バッチサーバにdeployする時はassetsで付与されたタスクを無効化する。
config/deploy/batch.rb
callbacks[:before].delete_if{|c| c.source == "deploy:assets:symlink"}
callbacks[:after].delete_if{|c| c.source == "deploy:assets:precompile"}
そもそも不用なcallbackをロードしない
Capfileで
load 'deploy/assets'
とする代わりに、assetsを必要とするサーバでのみload 'deploy/assets'
してやるという解決策もあるかもしれない。
今回はassetsを有効化するサーバの数に対してバッチサーバの方が小数であったためこの方法を使った。