【发布时间】:2021-06-04 01:06:03
【问题描述】:
我目前正在尝试启用 nuget 库以在 CI/CD 进程中进行本地调试。
现状
我在使用 Ubuntu 代理的 Azure Devops 上有一个构建配置。构建发布工件,发布管道将 nuget 包打包/推送到 Azure Artifacts。
首先我尝试使用 snupkg 格式发布 pdb 文件,但 Azure Artifacts 不支持这些文件。 https://developercommunity.visualstudio.com/t/add-snupkg-support-to-azure-devops-artifacts/657354
我尝试按照本教程进行操作。 https://docs.microsoft.com/en-us/azure/devops/artifacts/symbols/setting-up-github-sourcelinking?view=azure-devops
第一个障碍是发布符号的任务不能在 Linux 上运行,而只能在 Windows 上运行。 https://github.com/microsoft/azure-pipelines-tasks/issues/5919
因此,我在使用符号服务器时运气不佳。我通过在.csproj 文件中添加以下内容找到了解决方法
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
现在符号被打包在 nuget 文件中,但当我在 Visual Studio 中使用该包时仍然没有自动加载。 (我在 VS 中取消选中仅启用我的代码)
当我在 Visual Studio 的“模块”窗口中手动添加它们时,它可以工作。
有什么方法可以在 Azure Devpos 中使用 Linux 代理构建 CI/CD 流程以使符号正常工作?或者VS在加载nuget包时可以自动加载符号吗?
我的项目是 .net 标准 2.1/.net 框架 5。 构建:Azure Devops(Ubuntu 代理) Nuget 存储库:Azure 工件 视觉工作室:VS 2019 16.8.4
非常感谢所有帮助我们。
谢谢
【问题讨论】:
标签: c# visual-studio azure-devops nuget azure-artifacts