デプロイ/プロビジョニング用のファイルの管理について良い方法(アイデア)を教えてください


プロジェクトごと、案件ごとの

- CapistranoのCapfileやdeploy.rb
- Chefのcookbook (Ansibleのplaybook)
- Serverpecの*_spec.rb

といったデプロイ/プロビジョニング用のファイルをどのように管理されていますか?
もしくはどのように管理するのが良いと思いますか?

「プロジェクトのソースコードのリポジトリ内で一緒に管理している」とか、はたまた「プロジェクトを横断して全部まとめて管理している」など、参考になる意見をお待ちしております。

その際に、採用している方法(良いと思う方法)についてメリットとして感じていること、デメリットとして感じていることもお聞かせください

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2013/10/03 11:22:03
  • 終了:2013/10/10 11:25:03

ベストアンサー

id:dragon3 No.1

dragon3回答回数1ベストアンサー獲得回数12013/10/03 12:23:29

ポイント300pt

いろいろ試行錯誤しつつ、変更しつづけてたりするけど、現状を回答してみます。
ちなみに、fabric/ansible/serverspec を使っております。

各プロジェクト毎に、アプリケーションとは別に server という名前でリポジトリを別(または、Subversion ならディレクトリを別) にして管理してます。
で、その中身は、

  • fabfile/
  • ansible/
  • serverspec/
  • ssh.config

みたいな構成になってます。

fabric や ansible については、どのプロジェクトでも共通な部分は、
できるだけ社内共通ライブラリにまとめて、pip でインストールして使う、みたいな感じになってきています。
たとえば、ansible の module や、fabric のタスク( http://www.backlog.jp/blog/2013/09/fabric-advanced.html ) とか。

どのプロジェクトでも上記構成で統一されていると、
どこになにがあるかわかるのはいいですよね。

共通な部分をまとめてライブラリ化するのは、
全体を見てて、かつ「良い塩梅」でまとめてくれる人が必要かと思います。
( 僕はあまりやれません... )

回答になってますでしょうか?

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません