Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022
このガイドでは、dotnet コマンド ライン インターフェイスを使用してプロジェクトを構成し、NuGet パッケージを復元する手順について説明します。
前提 条件
| 製品 | 要件 |
|---|---|
| Azure DevOps | - Azure DevOps 組織。 - Azure DevOps プロジェクト。 - Azure Artifacts フィード。 - .NET SDK バージョン 9.0.200 以降をダウンロードしてインストールします。 |
Azure Artifacts資格情報プロバイダーを設定する
フィードで認証するには、まずAzure Artifacts資格情報プロバイダーをインストールする必要があります。 dotnet に含まれているツール インストーラーを使用して、次のコマンドを使用して CLI から資格情報プロバイダーをインストールできます。
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool
リポジトリ レベルの nuget.config がAzure Artifactsソースのみを使用するように構成されている場合は、そのディレクトリの外部から install コマンドを実行するか、nuget.org をソースとして明示的に設定します。
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --source https://api.nuget.org/v3/index.json
必要に応じて、ツールをメジャー バージョンにピン留めします (再現性が重要なコンテナー イメージなど)。
dotnet tool install --global Microsoft.Artifacts.CredentialProvider.NuGet.Tool --version 2.* --source https://api.nuget.org/v3/index.json
最初の使用
認証を必要とする操作を初めて実行するときは、次のいずれかの方法を使用します。
-
--interactiveを使用してコマンドを実行すると、dotnetがサインインを求めるプロンプトを表示できるようになります。 これは、ほとんどのローカル開発シナリオに推奨されるアプローチです。
対話型コマンドを実行する前に、プロジェクトが設定され、フィードが nuget.configに追加されていることを確認します。セットアップの詳細については、 プロジェクトのセットアップに関するページを参照してください。
プロジェクトが設定され、フィードに接続されたら、プロジェクト ディレクトリに移動して次のコマンドを実行します。
dotnet restore --interactive
このコマンドはユーザーをサインインさせ、セッション トークンを取得します。 サインインが成功した後は、キャッシュされたセッション トークンが有効なまま、 --interactive なしで認証済みコマンドを実行できます。 詳細については、「Session トークンキャッシュの場所を参照してください。
- Docker コンテナーやカスタムオートメーションなどの非対話型シナリオでは、environment 変数を使用して資格情報を指定します。
Azure Pipelinesの場合は、NuGetAuthenticate@1 タスクを使用して、dotnet restore や dotnet nuget push などのコマンドを実行する前に、フィードに対して認証を行います。 詳細については、「Restore NuGet packages with Azure Pipelines」を参照してください。
フィードに接続する
Azure DevOps 組織にサインインし、プロジェクトに移動します。
次に 成果物を選択し、ドロップダウンメニューからフィードを選択します。
[フィードに接続する] を選択してから、左側の [NuGet] セクションから [dotnet] を選択します。
nuget.config ファイルを csproj または sln ファイルと同じフォルダーに作成します。 次の XML スニペットをコピーし、プレースホルダーを関連情報に置き換えて、新しいファイルに貼り付けます。
組織スコープのフィード:
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>プロジェクト範囲に特化したフィード
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
パッケージを復元する
次のコマンドを実行して、パッケージを復元します。
--interactive フラグは、ユーザーに資格情報の入力を求めるために使用されます。
dotnet restore --interactive
関連コンテンツ
- NuGet パッケージの発行 (dotnet)
- Azure Pipelines (YAML/クラシック) を使用してパッケージを発行する
- NuGet.org のパッケージを使用する