0

そのため、現在のTeam Foundation Server 2010のセットアップでは継続的インテグレーションを使用しており、これまでのところうまく機能しています。シェルフセットを実行しており、ビルドはTFSのビルドマネージャーで実行されており、MSTest単体テストも実行されています。

私の質問は、これに関する情報が見つからないようですが、TFSのビルドマネージャーによって作成された「ビルドユニット」を別のサーバーに移動する方法はありますか?

別名、このビルドをQA、ステージングなどの環境に「プロモート」するにはどうすればよいですか?

以前は、VS2010のWeb公開機能を使用していました。これにより、公開「プロファイル」を設定でき、プロファイルごとに異なるweb.configを関連付けることができます。これは、db接続文字列、アプリサーバーへのパスなど、構成ファイルに保持するすべてのものに非常に役立ちます。公開プロファイルに基づいて自動的に変更されます。プロファイルを選択し、ローカルでビルドしてから、[公開]ボタンを使用してアプリ全体を別のサーバーに移動します。

このセットアップは、2人で作業していて、ソースリポジトリのみにTFSを使用していた場合に最適でしたが、現在、ビルドはTFSサーバーで行われています。

私が探しているのは、TFSがビルドを実行するときの方法です(これは、マシン上でローカルに実行されるのではなく、TFSビルドマネージャーによって実行されます)。

  1. 使用する「公開プロファイル」を考慮に入れてください。これは、使用されるweb.configや、IDEのプロファイルに関連付けることができるその他のアイテムに影響します。
  2. ビルドが作成されたら、TFSから他のサーバー(QA、ステージング、本番)の1つにビルドを「プッシュ」する方法を見つけます。

それが可能かどうかさえわかりません。たぶん、TFSで作成されたビルドを取得し、それを手動でコピーして、プロジェクト/ファイルをデプロイされたサーバー上の正しいファイルパスに解凍するのは、まだ手動の作業ですか?または、TFSのワークフローの一部である可能性がありますが、まだ見つけていません。

4

2 に答える 2

2

これは、TFSからすでに可能です。このトピックに関するVishalJoshiの投稿を読んでください:http://vishaljoshi.blogspot.com/2011/07/documenting-key-end-to-end-deployment.html

于 2011-10-07T22:05:13.277 に答える
1

私が思いついた解決策は、TFS用に独自のビルドハンドラーを作成し、そのコードを使用してビルドをさまざまな環境にプッシュすることです。これが私を助けるために使用したリンクです:http://geekswithblogs.net/jakob/archive/2010/10/27/devleoping-and-debugging-server-side-event-handlers-in-tfs-2010.aspx

誰かがより詳細を知りたい場合は、私に連絡してください。喜んでお手伝いします。

于 2012-01-06T20:43:49.627 に答える