將 NuGet 套件發佈至 NuGet.org (傳統/YAML)
開發人員可以使用 Azure Pipelines 簡化發佈其 NuGet 套件以摘要和公用登錄的程式。 本文將逐步引導您將 NuGet 套件發佈至 NuGet.org。
必要條件
產品 | 要求 |
---|---|
Azure DevOps | - Azure DevOps 專案。 - 權限: - 若要授與專案中所有管線的存取權,您必須是 Project Administrators 群組的成員,。 - 若要建立服務連線,您必須具有 系統管理員 或 創建者 的角色,才能進行 服務連線。 |
NuGet.org | - NuGet 帳戶。 |
建立 API 金鑰
流覽至 [NuGet.org ],然後登入您的帳戶。
選取您的使用者名稱圖示,然後選取 [API 金鑰]。
選取 [ 建立],然後為您的金鑰提供名稱。 將 [推送新套件和套件版本範圍] 指派給密鑰,然後在 [Glob 模式] 字段中輸入
*
以包含所有套件。完成後,選取 [建立]。
選取 [複製,並將 API 金鑰儲存在安全的位置。
建立服務連線
登入您的 Azure DevOps 組織,然後流覽至您的專案。
在頁面左下角選取
項目設定。
選取 [NuGet],然後選取 [ 下一步]。
選擇 ApiKey 作為驗證方法,並將 摘要 URL 設定為:
https://api.nuget.org/v3/index.json
。輸入您稍早在 [ApiKey] 字段中建立的 ApiKey,並提供服務連線的名稱。
選取 [[將訪問許可權授與所有管線] 複選框,然後在完成時選取 [儲存]。
發佈套件
注意
如果您使用Ubuntu 24.04或更高版本,則必須搭配 .NET CLI 使用 NuGetAuthenticate
工作,而不是 NuGetCommand@2
工作。 如需詳細資訊,請參閱 關於更新版 Ubuntu 主機圖像的支援。
登入您的 Azure DevOps 組織,然後流覽至您的專案。
選取 [管線],選取您的管線定義,然後選取 [編輯]。
將下列代碼段新增至您的 YAML 管線。 請將占位符替換為您稍早建立的服務連接名稱:
steps: - task: DotNetCoreCLI@2 displayName: 'dotnet pack' inputs: command: pack - task: NuGetCommand@2 displayName: 'NuGet push' inputs: command: push nuGetFeedType: external publishFeedCredentials: <NAME_OF_YOUR_SERVICE_CONNECTION>
管線成功完成之後,瀏覽至 NuGet.org上的 套件 頁面,您會看到您最近發佈的套件列在頂端。
相關內容
- 將套件發布到內部和外部源
- 使用 Azure Pipelines 還原 NuGet 套件
- 管線快取