小さい会社のツールスタック・開発フロー
おはようございます。@komagataです。
弊社にデザイナーインターンの@Horaotokoが来てくれたので、説明を兼ねて現時点の僕らの会社で使ってる正直なところのツールと開発フローをまとめておこうと思います。(有料のツールやサービスについては値段とプラン名を明記します。)
真面目か!(aka トシ@タカアンドトシ)
インフラ
CIサーバーとstagingサーバーはさくらのVPS 1G (980円/月)に同居しています。怖話 (kowabana.jp)のproductionはさくらのVPS 8G (7980円/月)を使っています。オフィスのBGMは確認用のiPhoneで流しています。
webサービス
- Google Apps
- Google Analytics
- AMoAd
- PivotalTracker STARTUP Sプラン ($7/month)
- Github Organization Bronzeプラン ($25/month)
- Newrelic Liteプラン
- Lingr
ソフトウェア
- OS: Debian squeeze
- フレームワーク: rails
- テスト: rspec
- テンプレート: haml
- webサーバー: nginx
- appサーバー: unicorn
- DB: mysql
- CIサーバー: jenkins
- deploy: capistrano
- 画像編集: Adobe CS5 Web Premium アカデミック版 (確か98,000円ぐらい)
開発フロー
- PivotalTrackerに登録してあるストーリーをStartします。
- ローカルのMacでtopicブランチを作り、プログラマーはrails, rspecを使ってテストと実装を書きます。デザイナーはsassやhamlを使ってデザインします。
- コードはGithubにpushします。
- GithubにpushされるとLingrのchatに通知が行き、CIサーバーがテストを実行し、statingサーバーにdeployします。
deployが失敗した場合はメンバー全員にメールが飛びます。また、CIサーバーでは午前0時に定期deployが行われるようになっています。
- stagingへのdeployが成功したら、ローカルからproductionにcapistranoを使ってdeployします。
エラー通知・監視
productionのappサーバーのエラーはexception_notificationがメールをメンバーに飛ばします。(滅多に無い)
監視にはNewrelicについでに付いている(?)Webサーバーの監視だけを使っています。どっちかというとこっちのメールの方がよく来ます。(nginxがおかしいとか、networkがおかしいとか)
今後導入したいもの
Amazon S3にバックアップを取るようにしたいです。また、請求書送付の有料サービス(misoca)も検討しています。
他にオススメのツールやサービスがあればコメントやTwitterなどで教えていただければありがたいです。
comments powered by Disqus