web-dev-qa-db-ja.com

分散チームの開発環境のセットアップ

Drupalを使用してサイトを構築するには、5人未満のプログラマーからなる小規模な分散チーム用の開発環境をセットアップする必要があります。開発は、各プログラマーが自分のマシンで行います。理想的には、すべてのサーバーを本番サーバーと同じファームに配置しますが、コストを制限したかったのです。提案されたセットアップは以下のとおりです。私はこれを理解しようとしている初心者なので、説明やコメントをいただければ幸いです。

回答募集

コメントできますか:(1)各ステップの代替案。 (2)見逃したものの追加。 (3)さまざまなサーバーをセットアップして、特に収益前の段階でホスティングコストを最小限に抑える方法。 (4)できるだけ多くのプロセスを自動化するのに役立つ追加のツール。 (5)分散チームへのアクセスを提供する際に考慮すべきセキュリティの問題?

提案されたセットアップ

  1. ソースコードリポジトリ-sourcerepo.comまたはrepositoryhosting.com(Trac/GitまたはRedmine/Gitのいずれか)を使用します。これには、ソースコード、wiki、バグ追跡、およびプロジェクト管理が含まれます。無制限のユーザーの価格は月額約6ドルです。

  2. サーバーのテスト-これには安価なVPSを使用することを考えています(月額約$ 10)。また、開発者が最新バージョンに対して同時にテストできるように、AmazonEC2を検討しています。

  3. ステージングサーバー-安価なVPSを使用するか、Linode.comの2つのノード(1つはステージング用、もう1つは本番用)を使用します。

  4. Production Server-これについてはLinode.comを調べています。

  5. バックアップ/メディアファイルストレージ-Amazon S3アカウントへのバックアップを設定し、ユーザーがサイトにアップロードする画像を保持するようにS3を設定します。これにより、運用サーバーの帯域幅とストレージのコストを削減できます。また、本番サイトでLinode.comによる自動バックアップサービスを使用する場合があります。

テストサーバー、ステージングサーバー、本番サーバーには、Drupal Mercury(drush、code、simpletestモジュール付き)、CI用のHudson、機能テスト用のSelenium、パフォーマンスのベンチマーク用のjMeterなどの同じソフトウェアがインストールされます。

1
user47924

アプリケーションが実行中にシステムを破壊することを期待しない限り、複数のテストサーバーとステージングサーバーを用意するのはやり過ぎです。テストとステージングの両方に単一のサーバーを用意し、複数の仮想ホストに個別のドキュメントルートを設定します。