[英]Azure DevOps dotnet restore task fails due to wrong URL format on Nuget artifact feed
我在 YML 文件中有以下恢復任務:
- task: DotNetCoreCLI@2
displayName: Restore
inputs:
command: restore
feedsToUse: select
vstsFeed: MyFeedName
但是由於錯誤的提要 URL 導致恢復操作失敗,日志中顯示如下: https://pkgs.dev.azure.com/<organization_name>/_packaging/MyFeedName/nuget/v3/index.json
://pkgs.dev.azure.com/<organization_name>/_packaging/MyFeedName/nuget/v3/index.json
根據來自 DevOps 的“連接到 feed”信息,URL 應該采用以下格式: https://pkgs.dev.azure.com/<organization_name>/<guid>/_packaging/MyFeedName/nuget/v3/index.json
://pkgs.dev.azure.com/<organization_name>/<guid>/_packaging/MyFeedName/nuget/v3/ https://pkgs.dev.azure.com/<organization_name>/<guid>/_packaging/MyFeedName/nuget/v3/index.json
所以,它似乎沒有插入導致它失敗的<guid>
部分。 我不知道如何在 YAML 中配置任務,以便它使用正確的 URL。 我該怎么做呢?
似乎它沒有插入使其失敗的部分。 我不知道如何在 YAML 中配置任務,以便它使用正確的 URL。 我該怎么做呢?
這個<guid>
是你當前項目的 id。 當您將此DotNetCoreCLI@2
任務添加到 yml 文件時, vstsFeed
的值應類似於以下格式: {projectid}/{feedid}
。
例如,
- task: DotNetCoreCLI@2
displayName: Restore
inputs:
command: 'restore'
projects: '**/*.csproj'
feedsToUse: 'select'
vstsFeed: '54cc87c1-****-****-****-************/ff77923d-****-****-****-************'
如果您不知道如何獲取ProjectId
,請參閱 Rest Api 文檔: Projects - List 。
您可以在 Postman 中調用它,如下所示:
或者,您可以直接使用Feed 管理 - 獲取 Feed同時獲取您的項目 id 和 Feed id:
vstsFeed
期待{projectid}/{feedid}
,而不是完整的提要 URL https://pkgs.dev.azure.com/{Organization Name}/{Project Name}/_packaging/{Feed Name}/nuget/v3/index.json
。 這些 id 是 GUID,可以使用以下步驟找到。
在 Azure DevOps 中打開您的項目,選擇 Artifacts,從下拉列表中選擇所需的源,然后單擊“連接到源”按鈕。 然后選擇 Visual Studio,復制機器設置源 URL 並輸入 URL https://pkgs.dev.azure.com/{Organization Name}/{Project Name}/_packaging/{Feed Name}/nuget/v3/index.json
到你的瀏覽器。
您可以將生成的 JSON 復制並粘貼到 Visual Studio Code 中的新文件中,然后按 Alt-Shift-F 進行格式化,或者使用JSON Formatter for Edge等瀏覽器擴展來使 JSON 清晰易讀。
資源中提供的任何 URL 都包含項目 ID(第一個 GUID)和提要 ID(第二個 GUID)。 例如從 URL...
https://pkgs.dev.azure.com/someorganization/acbd5515-415a-47fb-a0fb-d8880726b180/_packaging/1c7d43be-a18a-4567-ac5b-f8a8bd0f7617/nuget/v2/
您可以將以下 YMAL 添加到您的構建管道中。
- task: DotNetCoreCLI@2
displayName: Restore
inputs:
command: 'restore'
feedsToUse: 'select'
vstsFeed: 'acbd5515-415a-47fb-a0fb-d8880726b180/1c7d43be-a18a-4567-ac5b-f8a8bd0f7617'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.