2010-12-05 14 views
5

私はCapistranoを初めて使いました。自分のプロジェクトのためにCapistranoの設定を管理するのが最善の方法だと思います。Capistrano構成管理の良い方法は?

具体的には、config/deploy.rbは、プロジェクトのソース管理に関してどこに住んでいますか?特定の構成情報なしでファイルのテンプレートを保存する必要がありますか?または、この構成をチーム内で共有する独自のレポにする必要がありますか?

答えて

2

私がカピストラーノをますます使い始めたとき、私はこれについても疑問に思っていました。私たちの多くは、ランタイム設定の情報を機能コードとは別に追跡することが理にかなっていると思いますか?したがって、デプロイメントコンフィグレーションについても同じことが起こりますか?

./deploy/フォルダーをSCMサブモジュールにすることができますね。 が作業コピーにCapfileを生成するレーキタスクを行うことができます。これにより、最終的なパスワードやアプリの外の情報を保持することができます。これには宝石があるかもしれません。

Iはカピストラーノ変数の大部分は、set(:deploy_to) {"#{base_dir}/#{environment}/#{application}"}としてパターンに従う、同様にソースコードリポジトリパスの可能性が横切って約10の異なる用途を有する:私は別のアプローチを選んだしかし

すべて個々のアプリケーションからの展開についての知識はなく、代わりに1つの別個の一般的な「展開」プロジェクトに入れました。今、私はそのプロジェクトをチェックアウトして行くことができます:

cap [some application] [environment] [deploy task] 

私はどこにでもCapfilesの周りに広がってより多くの懸念のこのパターン/分離を好みます。

1

これは非常に良い質問です。

最終的には、deploy.rb関連のものもすべてデプロイメントプロジェクトに入れて、そこからアプリケーションプロジェクトとシンボリックリンクしました。当時、aはWebistranoを探していました。それは、自分自身でレシピを保持できるように見えるからです。プロジェクトはもはや維持されていないように見えるので、私は上記のアプローチを行った。

関連する問題