プロジェクト用にCruiseControl.NETをセットアップするタスクに署名しました。Async CTPを使用しているという事実を踏みにじるまで、すべてがうまくいきました。私の質問は次のとおりです。
- Visual Studio以外で非同期CTPビルドマシンを呼び出すためのオプションはありますか?(VSを使用せずに手動で前処理を行います。)
- CruiseControl.NETに非同期CTPを使用してプロジェクトをビルドさせるにはどうすればよいですか?
プロジェクト用にCruiseControl.NETをセットアップするタスクに署名しました。Async CTPを使用しているという事実を踏みにじるまで、すべてがうまくいきました。私の質問は次のとおりです。
私のために働いたトリックは、非同期ctpがインストールされたVSがインストールされているPCからmsbuildを取得し、ビルドサーバーのビルドマシンでmsbuildを置き換えることでした。
私はCruiseControl.NETに精通していませんが、AsyncCTPがどのように機能するかについては精通しています。
CTPには、CTP対応のコンパイラが含まれています。ビルドマシンにCTPをインストールできるはずです。これにより、Async.NETコードをコンパイルできるようになります。
CTPインストーラーでVisualStudioが必要な場合は、VSをインストールしてからCTPをインストールしてから、マシンにCTP対応のコンパイラーを残したままVSをアンインストールできるはずです。
これは、ASP.NETのコンパイルオンデマンドシナリオと組み合わせてCTPを使用することを期待する方法と似ています。
別のビルドサーバーツールであるTeamCityを使用していますが、すべてMSBuildに依存しているため、同じように機能するはずです。
.NET自体にキーワードを追加するため、非同期CTPとの互換性についても同じ疑問がありましたが、試してみた後は、プロジェクトでAsyncCtpLibrary.dllを参照し、 DLLがビルドサーバーに到達します。たとえば、バージョン管理システムに含めることをお勧めします。Subversionであるため、参照はプロジェクトルートを基準にしており、ビルドサーバーの適切な場所に自動的に配置されます。
このようにして、完全なパッケージをインストールするためにコンピュータを「だます」必要はありません。