1

いくつかの .NET アプリをビルドする .NET Jenkins インストールがあります。これらのアプリには、多数の*.exeファイルが含まれてい*.exe.configます。現時点では、すべての *.exe、必要な DLL と*.xmlファイル、および既定の*.exe.configファイルを含む zip ファイルとしてアプリを保存しています。デフォルト*.exe.configは、Subversion リポジトリにあるものから値を取得し、本番環境用に調整されています。

*.exe.configファイルには、データベース名、データベース サーバー、サーバーの名前などが含まれています。これらは実稼働環境では正しいですが、UAT、QA、または開発者テストでは正しくありません。

私がやりたいのは、ユーザーが特定のビルドと、環境ごとに異なる特定のパラメーターの値を指定できる、ある種のビルド後のタスクを用意することです。それができたら、Nant または Ant タスクを実行して、zip ファイルを解凍し、*.exe.configファイルを変更して展開するか (最終的な目標)、少なくとも圧縮してユーザーがアクセスできる場所に配置することができます。

パラメーター化されたビルドとバッチ タスクがあることはわかっていますが、2 つの組み合わせが必要です。それは可能ですか?

4

1 に答える 1

0

それほどエレガントではありませんが、別のビルドとして必要なものを実装できると思います。必要なもの:

  1. パラメータ化されたビルド(あなたが知っている)
  2. 別のビルドからアーティファクトにアクセスする方法

これらの要素があれば、説明どおりのことを行うパラメーター化されたビルドを作成できるはずです。つまり、ビルド アーティファクトを取得し、構成を変更して、それをユーザーに提供します。もちろん、問題は細部にあります。たとえば、ユーザーが「適切なビルドを選択」するのを簡単にするのは難しいかもしれません。


更新(バッチタスクについて学んだので、ありがとう!):あなたが尋ねたようにバッチタスクをパラメータ化する方法がわかりません。変数の組み合わせにより、多数の異なるバッチ タスクを定義することが不可能になっていると思います。一般的なリリースおよびテスト構成用にいくつかのバッチ タスクを定義し、さらにユーザー固有の構成用に「munger」プログラムを提供することもできます。

于 2011-06-03T22:18:04.550 に答える