次の方法で共有


NuGet ギャラリーからパッケージを使用する

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

Azure Artifacts アップストリーム ソースを使用すると、開発者は nuget.org や npmjs.com などのパブリック レジストリからパッケージを使用できます。 この記事では、プロジェクトを設定し、コマンド ラインを使用して NuGet ギャラリーから NuGet パッケージを効果的に使用するプロセスについて説明します。 この記事では、次の方法について学習します。

  • フィードのアップストリーム ソースを有効にする
  • NuGet ギャラリーをアップストリーム ソースとして追加する
  • フィードに接続する
  • nuget.org からパッケージをインストールする

前提条件

フィードでアップストリーム ソースを有効にする

フィードをまだ作成していない場合は、次の手順に従って新しいフィードを作成し、アップストリームソースチェックボックスをオンにして有効にします。 既にフィードがある場合は、 次の手順に進み NuGet ギャラリーをアップストリーム ソースとして追加します。

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

  2. [ Artifacts]\(成果物\) を選択し、フィードを作成します。

  3. フィードに Name を指定し、パッケージを表示できるユーザーを定義する Visibility オプションを選択し、一般的なパブリック ソースからのパッケージを含めるか確認しますnuget.orgnpmjs.comなどのソースからのパッケージを含める場合、および Scope では、フィードのスコープをプロジェクトと組織全体のどちらにするかを決定します。

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

    Azure DevOps Services で新しいフィードを作成するための選択を示すスクリーンショット。

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

  2. [ Artifacts]\(成果物\) を選択し、フィードを作成します。

  3. フィードに Name を指定し、パッケージを表示できるユーザーを定義する Visibility オプションを選択し、一般的なパブリック ソースからのパッケージを含めるか確認しますnuget.orgnpmjs.comなどのソースからのパッケージを含める場合、および Scope では、フィードのスコープをプロジェクトと組織全体のどちらにするかを決定します。

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

    Azure DevOps 2022 で新しいフィードを作成するための選択を示すスクリーンショット。

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

    Azure DevOps 2020 で新しいフィードを作成するための選択を示すスクリーンショット。

既定では、プロジェクトの ビルド サービス(projectName Build Service (orgName) など) には、新しいフィードの作成時に フィードとアップストリーム 閲覧者 (コラボレーター) ロールが割り当てられます。

フィードの作成時に [アップストリーム ソース] チェックボックスをオンにしている場合は、NuGet ギャラリーが自動的に追加されているはずです。 そうでない場合は、次の手順に従って手動で追加します。

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

  2. [ Artifacts]\(成果物\) を選択し、フィードを選択します。

  3. 歯車アイコン ボタン 歯車アイコン を選択して、 Feed 設定に移動します

  4. Upstream ソースを選択し、アップストリームの追加を選択して新しいアップストリーム ソースを追加します。

  5. Public source を選択し、ドロップダウン メニューから NuGet Gallery を選択します。

  6. 完了したら [追加 ] を選択し、右上隅にある [ 保存 もう 1 回選択して変更を保存します。

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

  2. [ Artifacts]\(成果物\) を選択し、フィードを選択します。

  3. 歯車アイコン ボタン 歯車アイコン を選択して、 Feed 設定に移動します

  4. [ アップストリーム ソース] を選択し、[ アップストリームの追加] を選択します。

  5. Public source を選択し、ドロップダウン メニューから NuGet Gallery を選択します。

  6. 完了したら 保存 を選択し、右上隅にある [ 保存 もう 1 回選択して変更を保存します。

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

  2. [ Artifacts]\(成果物\) を選択し、フィードを選択します。

  3. 歯車アイコン ボタン 歯車アイコン を選択して、 Feed 設定に移動します

  4. Upstream ソースを選択し、アップストリーム ソースの追加を選択します。

  5. Public source を選択し、ドロップダウン メニューから NuGet Gallery を選択します。

  6. 終了したら [追加] を選択します。

フィードに接続する

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

  2. [ Artifacts]\(成果物\) を選択し、フィードを選択します。

  3. [ フィードに接続] を選択し、[ NuGet.exe] を選択します。

  4. nuget.config ファイルを .csproj または .sln ファイルと同じフォルダーに追加します。 指定した XML スニペットをファイルに貼り付けます。 次の例を使用する場合は、プレースホルダーを実際のシナリオに適した値に置き換えてください。

    • 組織スコープのフィード:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<SOURCE_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="<SOURCE_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. フィードに接続を選択し、左側のナビゲーション ウィンドウからNuGet.exeを選択します。

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

フィードで認証するようにプロジェクトが構成されたので、NuGet ギャラリーのアップストリームからパッケージのインストールに進むことができます。 この例では、 Serilog 診断ログ ライブラリをインストールします。

  1. https://www.nuget.org/の NuGet ギャラリーに移動します。

  2. Serilog パッケージを検索し、それを選択して詳細ページに移動します。

  3. [パッケージ マネージャー] タブを選択し、コマンドをコピーします。 この例では、コマンドは次のようになります。

    NuGet\Install-Package Serilog -Version 3.1.2-dev-02097
    
  4. Visual Studio でプロジェクトを開き、Tools>NuGet パッケージ マネージャー>パッケージ マネージャー Console を選択してコンソール ウィンドウを開きます。

  5. パッケージ マネージャー コンソール ウィンドウにコマンドを貼り付け、Enter キーを押してパッケージをインストールします。

アップストリームからパッケージを保存するには、 Feed およびアップストリーム 閲覧者 (コラボレーター) ロール以上が必要です。 詳細については、「 管理のアクセス許可 を参照してください。

保存されたパッケージを表示する

  1. Azure DevOps 組織にサインインしてから、プロジェクトに移動します。
  1. Azure DevOps サーバーにサインインし、プロジェクトに移動します。
  1. [ 成果物] を選択し、ドロップダウン メニューからフィードを選択します。

  2. ドロップダウン メニューから NuGet Gallery ソースを選択して、このアップストリームのパッケージをフィルター処理します。

  3. 前の手順でインストールした Serilog パッケージがフィードで使用できるようになりました。 Azure Artifacts は、インストール コマンドの実行時にフィードにコピーを自動的に保存しました。

    アップストリームから保存されたパッケージを示すスクリーンショット。