Azure Pipelines を使用して NuGet パッケージを復元する (YAML/クラシック)
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
NuGet パッケージの復元を使用すると、ソース管理に保存しなくても、プロジェクトのすべての依存関係をインストールできます。 これにより、開発環境をよりクリーンにし、リポジトリのサイズを縮小することができます。 NuGet パッケージは、NuGet の復元タスク、NuGet CLI、または .NET Core CLI を使用して復元できます。 この記事では、クラシック パイプラインと YAML パイプラインの両方を使用して NuGet パッケージを復元する方法について説明します。
前提条件
新しいフィードを作成します (ない場合)。
セルフホステッド エージェントを使用している場合は、.NET Core SDK (2.1.400 以降) と NuGet (4.8.0.5385 以降) がインストールされていることを確認します。
同じ組織内のフィードから NuGet パッケージを復元する
Azure DevOps 組織にサインインしてから、プロジェクトに移動します。
[パイプライン] を選択し、使用するパイプライン定義を選択します。
[編集] を選択し、次のスニペットを YAML パイプラインに追加します。
steps: - task: NuGetAuthenticate@1 - task: NuGetToolInstaller@1 inputs: versionSpec: '*' checkLatest: true - script: nuget restore <SOLUTION_PATH>
Note
フィードで NuGet ギャラリーのアップストリームが有効になっていることを確認します。 詳細については、「 既存のフィード内のアップストリーム ソースを有効にします を参照してください。
別の組織のフィードから NuGet パッケージを復元する
別の Azure DevOps 組織のフィードから NuGet パッケージを復元するには、まず個人用アクセス トークンを作成してから、それを使用して NuGet サービス接続を設定する必要があります。
個人用アクセス トークンを作成する
Azure DevOps 組織に移動して、[ユーザー設定]>[個人用アクセス トークン] の順に選択します。
Packaging* >Read スコープを使用して、新しい個人用アクセス トークンを作成します。 次のセクションで必要になるので、PAT をコピーします。
終わったら [作成] を選択します。
サービス接続を作成する
パイプラインを実行する Azure DevOps 組織にサインインし、プロジェクトに移動します。
[プロジェクト設定]>[サービス接続] に移動します。
[新しいサービス接続]、[NuGet]、[次へ] の順に選択します。
[認証方法] として [外部の Azure DevOps Server] を選択し、ターゲットの [フィード URL] を入力します。 先ほど作成した個人用アクセス トークンを貼り付け、サービス接続の名前を指定して、シナリオに該当する場合は [すべてのパイプラインへのアクセス許可を与える] をオンにします。
完了したら、 [保存] を選択します。
パッケージの復元
Azure DevOps 組織にサインインしてから、プロジェクトに移動します。
[パイプライン] を選択し、使用するパイプライン定義を選択します。
[編集] を選択し、次のスニペットを YAML パイプラインに追加します。
- task: NuGetToolInstaller@1 inputs: versionSpec: '*' checkLatest: true - task: NuGetAuthenticate@1 inputs: nuGetServiceConnections: <SERVICE_CONNECTION_NAME> - script: | nuget.exe restore <SOLUTION_PATH> displayName: Restore