3

を作成しようとしていますBuild Pipeline。Microsoft が公開している既存の msbuild ターゲットを活用できるのか、それとも自分でゼロから作成する必要があるのか​​に興味があります。

私は大規模な Webサイトプロジェクト (Web アプリケーションではない) を持っています。

ビルド パイプラインは次のとおりです。

  1. チェックインが発生します
  2. CI呼び出されたビルドをトリガーします01 Commit Stage
  3. 01 Commit Stage自動トリガー02 Prepare for deployment
  4. 02 Prepare for deployment自動トリガー03 UAT

各段階で私がやりたいことは次のとおりです。

  • 01 コミットステージ
    • すべてのプロジェクト ファイルがビルドされます
    • 単体テストが実行されます
    • Web サイトは AspNet_Compiler を介して実行されます
  • 02 展開の準備
    • 以前のビルドからの出力が使用されます
    • その後、AspNet_Merge.exe を介して出力が実行され、コンパイルされた dll が単一のバージョン管理されたアセンブリにマージされます。
    • 出力アーティファクトをデプロイ可能として保存
  • 03 UAT
    • 前のステップの成果物は、テストのために QA にデプロイされます。

私の質問は:

In the second build, how do I skip the build target and simply point the existing Microsoft publishing pipeline to the existing output? Or would I just be better building my own set of MSBuild targets to do exactly what I need?

これまでのところ、私は独自のパイプラインを構築することに最も喜びを感じてきましたが、MS の利点を逃していると感じずにはいられません。

4

1 に答える 1

1

TFS 2013 を使用している場合は、組み込みのリリース管理ツールを使用して、展開する環境、サーバー、およびコンポーネントを定義できます。その後、環境を介したバイナリ プロモーションのための展開の完全なトレーサビリティ、承認、およびスケジューリングを取得します。

http://www.visualstudio.com/en-us/explore/release-management-vs.aspx

ただし、TFS 2012 を使用している場合は、ボックスにリリース管理ツールがないため、もう少しサポートが必要になる場合があります。ただし、Workflow ベースのビルド システムを LabDefaultTemplate と共に使用して、環境へのデプロイとテストを行うことができます。それをしたくない場合は、代わりに OctopusDeploy を使用することをお勧めします。

http://nakedalm.com/release-management-with-team-foundation-server-2012/

TFS 2005/2008 を使用している場合は、かなり行き詰まっています。唯一のサポートは、MSBuild の苦痛と苦しみを使用して展開を行うか、サード パーティのツールにアクセスすることです。正直なところ、この立場と製品の古さを考えると、2012 にアップグレードしてから 2013 にアップグレードすることをお勧めします。とツール。

于 2013-12-11T11:36:48.617 に答える