NuGet
統合機能
TeamCity は NuGet(英語) パッケージマネージャーと統合され、NuGet がエージェントにインストールされている場合、次の機能を提供します。
ビルドの公開されたアーティファクトに基づくプライベート NuGet フィード。
Windows OS 上のビルドで使用される NuGet ランナーのセット、およびエージェントに Mono(英語) がインストールされている場合の Linux と macOS 上のビルドで使用される NuGet ランナーのセット。
NuGet パッケージをインストールおよび更新する NuGet インストーラービルドランナー。
NuGet パッケージをビルドする NuGet パックビルドランナー。
NuGet パブリッシュビルドランナー。選択したフィードにパッケージを公開します。
NuGet 依存関係トリガー。NuGet フィード更新でビルドをトリガーできます。
サポートされているオペレーティングシステム :
NuGet ビルドランナーは、Windows OS を実行しているビルドエージェントでデフォルトでサポートされます。Linux と macOS は、エージェントに Mono(英語) がインストールされている場合サポートされます (Mono 4.4.2+ 上の NuGet 3.3+ のみがサポートされます)。
典型的な使用シナリオ
パブリックフィードからパッケージをインストールするには、NuGet インストーラービルドステップを追加します。
パッケージを作成してパブリックフィードに公開するには、NuGet パックおよび NuGet パブリッシュビルドステップを追加します。
パッケージを作成して内部の TeamCity NuGet サーバーに公開するには、TeamCity を NuGet サーバーとして有効にし ( 専用ページを参照)、NuGet パックビルドステップと NuGet パブリッシュビルドステップを使用します。
NuGet パッケージが更新されたときに新しいビルドをトリガーするには、NuGet 依存性トリガーを使用します。
NuGet を TeamCity エージェントにインストールする
NuGet トリガーと NuGet 関連のビルドランナーには、サーバーで構成された NuGet コマンドラインバイナリが必要です。構成が完了すると、エージェントに自動的に配布されます。いくつかのバージョンをインストールでき、選択したバージョンをデフォルトとして設定できます。
NuGet.exe を TeamCity にインストールするには:
管理 | ツールタブに移動します。
ツールをインストールし、NuGet.exe を選択するをクリックします。
パブリックフィードから NuGet をダウンロード(デフォルト)するか、
NuGet.exeを含む独自の NuGet パッケージをアップロードするかを選択します。ダウンロードラジオボタンが選択されている場合は、すべてのビルドエージェントにインストールする NuGet バージョンを指定します。
アップロードラジオボタンが選択されている場合は、独自の NuGet パッケージを指定します。
関連するチェックボックスを使用して、この NuGet バージョンをデフォルトにするかどうかを指定します。
追加をクリックして、選択した NuGet バージョンをインストールします。
NuGet パッケージは、エージェントのキャッシュクリーンアップを行います
NuGet は、いくつかのローカルキャッシュを使用して、すでにインストールされているパッケージのダウンロードを回避し、オフラインサポートを提供します。エージェントがスペースを使い果たしている場合、TeamCity はエージェント上の NuGet パッケージキャッシュを消去しようとします。
TeamCity NuGet クリーナーは、次の Windows ディレクトリのキャッシュを消去します。
%%NUGET_PACKAGES%% environment variable(絶対パスでなければなりません)%%LOCALAPPDATA%%\NuGet\Cache%%LOCALAPPDATA%%\NuGet\v3-cache%%user.home%\.nuget\packages
TeamCity 2019.2.3 以降、既存の NuGet クリーナーに加えて、新しい自動パッケージクリーナーが導入されます。.NET SDK がビルドエージェントにインストールされている場合、TeamCity はネイティブの .NET SDK コマンドを使用してクリーニングします。新しいクリーナーは、.NET SDK をサポートするすべてのプラットフォームで機能し、いくつかのレベルで動作します。最初に一時キャッシュをクリーンアップし、その後、必要に応じて .nupkg ファイルと HTTP リクエストをクリーンアップします。
プライベート NuGet フィードでの認証
ビルドイン NuGet フィードまたは NuGet フィード資格情報ビルド機能で指定されたフィードで認証を使用できます。資格情報のプロバイダーは、これらのフィードへの要求を自動的に認証します。
API サポート:
NuGet Installer/NuGet Publish ランナー
v3 : NuGet 4.8+(Windows)、Mono 上の NuGet 4.9+ が必要です
v1 /v2 : NuGet 2.0+ は最小要件、NuGet 3.5+ が推奨
.NET
v3 : .NET CLI 2.1.500 が必要
v1 /v2 : 未サポート
プロキシ設定
NuGet コマンドラインクライアントは、NuGet.config ファイルパラメーターまたは環境変数を介したプロキシサーバー構成をサポートしています。詳細については、NuGet のドキュメントを参照してください。