如何使用自定义 NuGet feed 在 VSTS 上运行 dotnet 测试?

Tom*_*ght 7 continuous-integration azure-devops dotnet-cli dotnet-restore dotnet-test

我们有一个项目依赖于自定义 NuGet feed(也托管在 VSTS 中)。

我正在尝试整合一个新阶段来生成代码覆盖率报告,如这篇博客文章中所示。我的新阶段如下所示:

新阶段截图

并由以下步骤组成:

  1. .NET Core 工具安装程序 - 使用 SDK 2.0.0
  2. dotnet restore在“使用此 VSTS/TFS feed 中的包”下拉列表中选择我的自定义 feed
  3. dotnet test使用相关参数来收集代码覆盖率
  4. 使用 ReportGenerator 的自定义步骤
  5. 发布结果的步骤

问题是dotnet test坚持尝试恢复包本身。由于我找不到方法告诉它使用自定义源,因此在尝试恢复这些包时失败:

D:\a\1\s\MyProject\MyProject.csproj : error NU1101: Unable to find package My.Package. No packages exist with this id in source(s): Microsoft Visual Studio Offline Packages, nuget.org

我的主要构建过程运行良好,并且能够从自定义源恢复包。区别在于使用 Visual Studio(即非dotnet)版本的命令:

主要构建过程的屏幕截图

处理这个问题的正确方法是什么?

我是否需要找到某种方式来讲述dotnet test我的自定义 Feed?

或者(假设我restore之前正在运行)我是否需要说服它完全跳过恢复?

Tom*_*ght 1

如果其他人遇到这个问题,我很抱歉地说我们的解决方法是合并两个存储库,从而有效地消除了使用私有 Nuget feed 的需要。

我们确实与 MS 的代表进行了一些来回讨论,但没有深入了解。