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

Azure DevOps Services |Azure DevOps Server 2022 - Azure DevOps Server 2019 |TFS 2018

Azure Artifacts を使用すると、フィードとの間で NuGet パッケージを発行および復元し、フィードの可視性設定に基づいて他のユーザーと共有できます。 この記事では、dotnet コマンド ライン インターフェイスを使用してパッケージを発行および復元するようにプロジェクトを設定する方法について説明します。

前提条件

フィードに接続する

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

  2. [Connect to feed] を選択します。

    フィードに接続する方法を示すスクリーンショット。

  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>/_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>
    
  1. [ビルド パッケージとリリース> パッケージ] を選択します

  2. ドロップダウン メニューからフィードを選択するか、まだ作成していない場合は フィードを作成 します。

  3. [Connect to feed] を選択します。

    TFS でフィードに接続する方法を示すスクリーンショット。

  4. NuGet を選択し、指示に従ってフィードに接続します。

パッケージの公開

パッケージをフィードに発行するには、管理者特権のコマンド プロンプトで次のコマンドを実行します。 プレースホルダーを適切な情報に置き換えます。

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

Note

これは api-key プレースホルダーとしてのみ使用されます。

  • :

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

外部ソースからパッケージを発行する

  1. 読み取りと書き込みのスコープをパッケージ化して個人用アクセス トークン (PAT) を作成します。

  2. パッケージ ソースを nuget.config ファイルに追加します。 これにより、PAT が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 <PACKAGE_PATH> --source <SOURCE_NAME> --api-key <ANY_STRING>
    
  • :

    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 nupkgs/mypackage.1.1.0.nupkg --source MySource --api-key AZ
    

パッケージの復元

パッケージを復元するには、管理者特権のコマンド プロンプトで次のコマンドを実行します。 この --interactive フラグは、ユーザーに資格情報の入力を求めるために使用されます。

dotnet restore --interactive