質問

私たちは、仕事でVB / C#.NETで開発された中型のWindowsアプリケーションを維持します。それでも今、このアプリのビルドとデプロイのプロセスは手動です。私は今でも知識がないその上のMSBuildを使用して自動化され、このプロセスを行うことが決定しています。

私たちのアプリは、簡単なビルド構成、すでに4つのソリューション(slnファイル)にグループ化されたプロジェクトのセットを持っており、ちょうど順序で4 slnsを構築する必要があります。そして、ディレクトリに(構築される最後のSLNの一部である)プロジェクトを公開します。それだ。すでに手動ビルド時間の30分を消費し、私は、これは時間の少なくとも1/4番目でのMSBuildを使用して手動で干渉することなく達成することができることをかなり確信してされる単純なプロセスます。

すべての私の目標は良いセット、私は私のプロセスを達成するためにMSBuildのリソースのためのWebを見回したが周りに多くのことを見ていることも始めた私を混同。ポインタまたはどこ単純なシナリオのために起動し始め、方法についての良い説明が必要です。ヘルプははるかに高く評価されます。

役に立ちましたか?

解決

このように記述するために非常に簡単なスクリプトのように聞こえます。でも、バッチファイルはどうなるます:

msbuild \path\to\first.sln /p:Configuration=Release
msbuild \path\to\second.sln /p:Configuration=Release
msbuild \path\to\third.sln /p:Configuration=Release
msbuild \path\to\fourth.sln /p:Configuration=Release
call deploy

もちろん、はるかに優れたサーバーを実行していることであろう、と言う<のhref =「http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET」のrel = "nofollowをビルド状況と歴史ます。

へのWebインターフェイスを提供しますnoreferrer "> CruiseControl.NET を、

ビルドMSにおいて、発信者のための2つの主制御点がある:対象とプロパティ。ターゲットのプロパティは、そのターゲットが構築されている方法を制御する、などのリソース、コンパイル、展開を、コンパイルするものです。

あなたはを設定のプロパティ(上記参照)を使用して、構成を制御することができます。あなたは*を開いた場合。* projのファイル、あなたはPropertyGroup要素に気づくでしょう。これらは/pの引数を使用して、コマンドライン経由で設定可能です。

ここでは、2つの引数のための仕様は次のとおりです:

/target:<targets>  Build these targets in this project. Use a semicolon or a
                 comma to separate multiple targets, or specify each
                 target separately. (Short form: /t)
                 Example:
                   /target:Resources;Compile

/property:<n>=<v>  Set or override these project-level properties. <n> is
                 the property name, and <v> is the property value. Use a
                 semicolon or a comma to separate multiple properties, or
                 specify each property separately. (Short form: /p)
                 Example:
                   /property:WarningLevel=2;OutDir=bin\Debug\

他のヒント

<のhref = "http://dotnet.org.za/cjlotz/archive/2008/01/15/continuous-integration-from-theory-to-practice-2nd-edition.aspx" のrel = "nofollowを「noreferrer>ここでMSBuildの、継続的インテグレーションとCuriseControl.NETに大きな情報をたくさん持っている良いガイドのです。確かに開始するには良い場所ます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top