次の方法で共有


コマンド ラインから NuGet パッケージを発行する (dotnet)

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020

このガイドでは、dotnet コマンド ライン インターフェイスを使用して NuGet パッケージを発行するようにプロジェクトを構成する手順について説明します。

前提 条件

製品 要件
Azure DevOps - Azure DevOps 組織
- Azure DevOps プロジェクト
- Azure Artifacts フィード
- Azure Artifacts Credential Providerをダウンロードしてインストールします。
- .NET Core SDK (2.1.400 以降) ダウンロードしてインストールします。

フィードを作成する

既にフィードがある場合は、次の手順に進みます。 それ以外の場合は、次の手順に従って新しいものを作成します。

  1. Azure DevOps にサインインし、プロジェクトに移動します。

  2. Artifacts を選択し、フィードを作成します。

  3. フィードのわかりやすい 名前 を入力し、その 可視性 (フィードを使用できるユーザー) を定義します。 フィードの スコープ を指定し、パブリック ソースのパッケージを含める場合は、[ 一般的なパブリック ソースのパッケージを含める ] チェック ボックスをオンにします。

  4. 終わったら [作成] を選択します。

フィードに接続する

フィードにパッケージを発行する前に、Azure Artifacts で認証する必要があります。 次の手順に従ってプロジェクトを設定し、フィードで認証します。

  1. Azure DevOps 組織にサインインし、プロジェクトに移動します。

  2. [Artifacts] を選択し、ドロップダウン メニューからフィードを選択します。

  3. [フィードに接続する] を選択してから、左側の [NuGet] セクションから [dotnet] を選択します。

  4. csproj または sln ファイルと同じフォルダーに nuget.config ファイルを作成します。 次の XML スニペットをコピーし、プレースホルダーを関連情報に置き換えて、新しいファイルに貼り付けます。

<?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>
  1. Azure DevOps サーバーにサインインし、プロジェクトに移動します。

  2. [Artifacts] を選択し、その後フィードを選択します。

  3. [フィードに接続する] を選択してから、左側のナビゲーション ペインから dotnet を選択します。

  4. Project のセットアップ セクションの手順に従ってフィードに接続します。

    Azure DevOps Server 2020 および 2022 で dotnet を使用してフィードに接続する方法を示すスクリーンショット。

同じ組織内のフィードにパッケージを発行する

次のコマンドを実行して、パッケージをフィードに発行します。 プレースホルダーを適切な値に置き換えます。

dotnet nuget push --source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --api-key <ANY_STRING> <PACKAGE_PATH> 

例の:

dotnet nuget push --source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --api-key AZ bin/MyPackage.5.0.2.nupkg

手記

api-key パラメーターは、Azure Artifacts フィードに発行するときに必要ですが、任意の文字列を値として使用できます。

別の組織のフィードにパッケージを発行する

NuGet パッケージを別の Azure DevOps 組織のフィードに発行するには、まずターゲット組織で個人用アクセス トークン (PAT) を作成し、新しいパッケージ ソースを構成ファイルに追加してから、発行コマンドを実行する必要があります。

  1. ターゲット フィードをホストしている組織に移動し、[パッケージ化]> スコープで 個人用アクセス トークン (PAT) を作成します。

  2. <PERSONAL_ACCESS_TOKEN> プレースホルダーを個人用アクセス トークンに置き換え、次のコマンドを実行してパッケージ ソースを nuget.config ファイルに追加します。 このファイルが安全に保存され、ソース管理にチェックインされていないことを確認します。

    dotnet nuget add source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --name <SOURCE_NAME> --username <USER_NAME> --password <PERSONAL_ACCESS_TOKEN> --configfile <PATH_TO_NUGET_CONFIG_FILE>
    
  3. 次のコマンドを実行してパッケージを発行します。

    dotnet nuget push --source <SOURCE_NAME> --api-key <ANY_STRING> <PACKAGE_PATH>
    

例の:

dotnet nuget add source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --name MySource --username MyUserName --password MyPersonalAccessToken --configfile ./nuget.config

dotnet nuget push --source MySource --api-key AZ nupkgs/mypackage.1.1.0.nupkg

手記

組織でファイアウォールまたはプロキシ サーバーを使用している場合は、 Azure Artifacts のドメイン URL と IP アドレス が許可されていることを確認します。