次の方法で共有


パッケージの昇格とフィード ビューの管理

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

フィード ビューを使用すると、開発者は、一部のパッケージを共有しながら他のパッケージを非公開にすることで、パッケージの可視性を制御できます。 各ビューでは、フィードがフィルター処理され、そのビューに対して定義されている特定の条件に基づいてパッケージのサブセットが表示されます。

既定では、Azure Artifacts には、 @Local@Prerelease@Releaseの 3 つのビューが用意されています。 @Local ビューは既定であり、すべての発行済みパッケージとアップストリーム ソースから保存されたパッケージが含まれます。 すべてのビューで、NuGet、npm、Maven、Python、Cargo、およびユニバーサル パッケージがサポートされます。 フィード設定>ビューで既定のビューを変更できますが、そのビューへの直接発行は有効になりません。 パッケージはベース フィードにのみ発行でき、 @Local ビューで使用できます。

パッケージをビューに昇格させるには、 フィードパブリッシャー (共同作成者) または フィード所有者 である必要があります。

パッケージを特定のビューに昇格させる

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

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

  3. 昇格するパッケージを選択し、[ 昇格] を選択します。

  4. ドロップダウン メニューからビューを選択し、もう一度 [昇格 ] を選択します。

    使用可能なビューの一覧を示すスクリーンショット。

重要

Azure Artifacts では、パッケージの降格はサポートされていません。 パッケージが昇格されると、以前のビューに戻すことはできません。

REST API を使用してパッケージを昇格する

REST API を使用してパッケージを昇格するには、適切な本文が JSON Patch ドキュメントとして書式設定された PATCH 要求を送信する必要があります。 これにより、パッケージのビュー配列に目的のビュー (プレリリースなど) が追加されます。

  1. Packaging を使用して個人用アクセス トークンを作成>スコープの読み取り、書き込み、管理を行います。

  2. エンドポイント URL をコピーし、次の例 ( PowerShell または curl) で置き換え、コマンドを実行してパッケージを目的のビューに昇格させます。

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

    https://pkgs.dev.azure.com/{organization}/_apis/packaging/feeds/{feedId}/nuget/packages/{packageName}/versions/{packageVersion}?api-version=7.1
    
  • プロジェクト スコープ フィード:

    https://pkgs.dev.azure.com/{organization}/{project}/_apis/packaging/feeds/{feedId}/nuget/packages/{packageName}/versions/{packageVersion}?api-version=7.1
    

詳細については、「 JsonPatchOperationNuGet - パッケージバージョンの更新 」を参照してください。

  • コレクション範囲フィード:

    https://{instance}/{collection}/_apis/packaging/feeds/{feedId}/nuget/packages/{packageName}/versions/{packageVersion}?api-version=7.1
    
  • プロジェクト スコープ フィード:

    https://{instance}/{collection}/{project}/_apis/packaging/feeds/{feedId}/nuget/packages/{packageName}/versions/{packageVersion}?api-version=7.1
    

詳細については、「 JsonPatchOperationNuGet - パッケージバージョンの更新 」を参照してください。

  • コレクション範囲フィード:

    https://{instance}/{collection}/_apis/packaging/feeds/{feedId}/nuget/packages/{packageName}/versions/{packageVersion}?api-version=6.0-preview.1
    
  • プロジェクト スコープ フィード:

    https://{instance}/{collection}/{project}/_apis/packaging/feeds/{feedId}/nuget/packages/{packageName}/versions/{packageVersion}?api-version=6.0-preview.1
    

詳細については、「 JsonPatchOperationNuGet - パッケージバージョンの更新 」を参照してください。

プレースホルダーを個人用アクセス トークン、エンドポイント URL、ビュー名に置き換え、コマンドを実行してパッケージを目的のビューに昇格させます。

$env:PAT = "YOUR_PERSONAL_ACCESS_TOKEN"
$uri = "YOUR_URL"
$headers = @{
    "Content-Type" = "application/json"
    Authorization = "Basic " + [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(":$env:PAT"))
}
$body = @{
    views = @{
        op    = "add"
        path  = "/views/-"
        value = "YOUR_VIEW_NAME"
    }
} | ConvertTo-Json

Invoke-RestMethod -Uri $uri -Method Patch -Headers $headers -Body $body

パブリック プロジェクト内のすべてのフィード ビューには、インターネット上のすべてのユーザーがアクセスできます。

ビューの管理

既定では、Azure Artifacts には 、@Local@Prerelease、@Releaseの 3 つのビューが用意 されています。 フィードの設定から直接名前を変更または削除することで、新しいビューを作成したり、既存のビューを管理したりすることもできます。

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

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

  3. 右端の の歯車アイコンを選択して、フィードの設定にアクセスします。

    フィードの設定にアクセスする方法を示すスクリーンショット。

  4. Viewsを選択し、ビューを選択し、編集を選択してビューを編集します。 新しいビューを追加する場合は、[ビュー 追加を選択します。

    フィード ビューを追加、編集、または削除する方法を示すスクリーンショット。

  5. 完了したら、 [保存] を選択します。

重要

パブリック フィードの場合、ビューのアクセス許可を [特定のユーザー] に変更すると、そのビューはアップストリーム ソースとして使用できなくなります。