Capistrano にはいくつかの粗いエッジがあります。考慮すべき他のパッケージは何ですか?
ご参考までに、私は非 Web 関連の制御に Capistrano を使用して、多数の (仮想) マシンでコマンドを実行することを含むいくつかのテストを自動化しています。
私が持っているタスクの 1 つは、VM をシャットダウンすることです。
desc "Shut down a VM"
task :turn_off_vm do
sudo 'shutdown -h now'
end
問題は、コマンドが実行されると、cap が ssh 接続を開いたままにし、それが消えるとエラーをスローすることです。これは、8 台のマシンのうち 2 台がシャットダウンしないことを意味します。
また、sudo は期待どおりに機能しません (fabric の sudo は機能します)、次のコマンド:
sudo 'echo 3 > /proc/sys/vm/drop_caches'
コマンドを実行するシェルではなく、「エコー」のみがルートとして実行されるため、失敗します。そのため、ファイルへの書き込みは私として行われます。