【问题标题】:Azure DevOps dotnet restore task fails due to wrong URL format on Nuget artifact feed由于 Nuget 工件源上的 URL 格式错误,Azure DevOps dotnet 还原任务失败
【发布时间】:2020-03-11 16:49:32
【问题描述】:

我在 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

根据来自 DevOps 的“连接到 feed”信息,URL 应该采用以下格式: https://pkgs.dev.azure.com/<organization_name>/<guid>/_packaging/MyFeedName/nuget/v3/index.json

所以,它似乎没有插入导致它失败的 <guid> 部分。我不知道如何在 YAML 中配置任务,以便它使用正确的 URL。我该怎么做?

【问题讨论】:

    标签: .net-core azure-devops nuget yaml


    【解决方案1】:

    它似乎没有插入导致它失败的部分。我不知道如何在 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 Management - Get Feeds同时获取您的项目ID和Feed id:

    【讨论】:

    • 嗨@ThomasCle,这对您关于<guid> 是什么以及如何配置任务的问题有帮助吗?如果是,您可以接受这个作为答案,或者请随时告诉您是否仍然存在混淆。谢谢!
    猜你喜欢
    • 2020-09-28
    • 1970-01-01
    • 2021-08-09
    • 2020-08-06
    • 2020-09-14
    • 2020-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多