Capistrano から Chef への切り替えに興味がありますが、すべての要素をまとめるのにいくつか問題があります。
http://wiki.opscode.com/display/chef/Quick+Startに従って、EC2 インスタンスをknife
. コードの展開に関しては、 http://wiki.opscode.com/display/chef/Deploy+Resourceにあることをやりたいように見えますが、唯一の問題は、そのページのどこにもどのディレクトリに言及されていないかということです/file デプロイ/to/path
コード ブロックを配置する必要があります。
私が抱えているもう 1 つの問題は、サーバーのセットアップ後にコードの変更をデプロイする方法を理解することです。おそらく、私は現在のワークフロー ( git push && cap deploy
) に慣れているだけですが、変更をコミットした後、サーバーに ssh してsudo chef-client
? それについての何かが間違っていると感じます。同等のキャップはありませんchef deploy
か?
最後に (これは少し難しいかもしれませんが)、複数の Rails アプリを 1 つのサーバーにデプロイしようとしています。展開の詳細を説明する各アプリのレポにある種のシェフ構成ファイルを保持することは賢明なようですが、それがシェフレポ/ホストされたサーバーとどのようにやり取りするかはわかりません。各アプリはロールですか? また、物事がどのように機能するかについての私の理解から、「chef-client」が実行時にすべてのアプリケーションをデプロイしようとするという考えにも少し不安があります。git push && cap deploy
私は自分が展開しているものを確信しています。一方、他のアプリケーション リポジトリの一部はデプロイ可能な状態ではない可能性があります。このセットアップで 1 つのアプリだけをデプロイする方法はありますか?