これは「本当の質問ではない」というフラグが立てられるかもしれませんが、NuGet が WiX 展開のどこに適合するかについて、私は本当に混乱しています (最後の質問から推測できます...)。
現在の状況
TeamCity ビルドは、サーバーに FTP 接続される WinForms 製品用の WiX Burn (3.6) インストーラーを作成します。アプリは Web サービスを呼び出して、資格のある新しいバージョンがあるかどうかを判断し、ある場合はバックグラウンドでダウンロードして、次回のアプリ起動時にインストールできるようにします。
新しい要件
NuGet パッケージを介して C# ソリューションに含まれる新しい機能がいくつかあります。パッケージには特定の機能があるため、90% のクライアント インストールではパッケージは必要ありません。そのため、おそらく独自の msi が必要になります。問題の NuGet パッケージは当社のものではなく、当社のサプライヤー サーバーの 1 つに常駐しており、入手するには認証が必要です。
私はNuGetの世界にどういうわけか慣れていないので、WiXに適合する場所に頭を悩ませることができません...
NuGet パッケージを CI ビルドの一部として含め、WiX インストーラー内に含めて、サプライヤーのサイトからダウンロードされないようにする必要がありますか (これにより、認証の問題が解決されます)。
Nuget パッケージ内のコンポーネントを含む新しい MSI を作成しますが、実際には最終的なクライアント展開に NuGet をまったく使用しませんか? (これにより多くの問題が解決されますが、NuGet パッケージが更新されるたびに作業が必要になる可能性があり、適切ではありません!)
書き込みインストールの一部として個別にダウンロードされるヘッドレス MSI パッケージを作成する必要がありますか? クライアントは、必要な認証を持っていないため、必要な認証を入力できません。
NuGet パッケージがインストール中にインストールされ、利用可能な最新のものを常に取得する場合、NuGet パッケージがサプライヤによって更新され、何らかの理由でインストールが中断された場合、インストールが後日失敗する可能性があります。NuGet パッケージがクライアントにダウンロードされている場合、これを回避する方法はありますか?
どうもありがとう、混乱!