TeamCity NuGet Feed:配置Feed网址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TeamCity NuGet Feed:配置Feed网址相关的知识,希望对你有一定的参考价值。

我正在尝试将我的TeamCity实例设置为私有NuGet包源。我已成功配置了feed并设置了一个发布工件的构建。

但是,当我尝试在TeamCity提要的源代码中安装包时,我遇到了问题:

通过转到TeamCity中的“NuGet Feed”页面,我可以看到源URL是http://localhost:8080/httpAuth/app/nuget/v1/FeedService.svc/

我已将我的本地Visual Studio(在我的本地计算机上运行,​​而不是在TeamCity服务器上)设置为 http://[my-TC-server]/httpAuth/app/nuget/v1/FeedService.svc/,我可以在NuGet管理器中查看具有预期属性的包。

但是,当我尝试安装软件包时,它会失败,因为软件包配置中的src属性仍然设置为http://localhost:8080/httpAuth/app/nuget/v1/FeedService.svc/download/NuGet_[myPackage]/73:id/p[myPackage].nupkg(我可以通过在http://[my-TC-server]/httpAuth/app/nuget/v1/FeedService.svc/Packages()查看我的TeamCity托管包来看到这一点),并且安装失败,因为它正在查看我的机器用于包文件,而不是在TeamCity服务器上。我假设src属性是在打包时设置的,并从某个地方的TeamCity配置中获取。

如果我导航到

http://[my-TC-server]/httpAuth/app/nuget/v1/FeedService.svc/download/NuGet_[myPackage]/73:id/p[myPackage].nupkg

在浏览器中,我可以成功下载该软件包。

是否可以将TeamCity中的源URL配置为http://[my-TC-server]/httpAuth/app/nuget/v1/FeedService.svc/,以便src参数也将使用[my-TC-server]而不是localhost?我在TC中找不到这样做的选项,我没有找到任何处理这个问题的文档。

如果无法配置提要URL,那么一个好的解决方案是什么,以便我的本地计算机可以从我的TeamCity服务器下载该包?

答案

这是两件事:

  1. 我需要配置我的TeamCity服务器URL(管理>常规设置)
  2. 我遇到了this problem with my server's reverse proxy,运行this command on the server修复了问题(服务器没有保留请求中的Host头)

在这两个之后,一切都很好!

以上是关于TeamCity NuGet Feed:配置Feed网址的主要内容,如果未能解决你的问题,请参考以下文章

How to add the custom nuget feed to TeamCity build?

如何完全清空或删除VSTS包裹Feed?

TeamCity Build Server无法恢复nuget包

如何调试从 TeamCity 部署的我的 nuget 包?

TeamCity - MSBuild无法找到NuGet引用

TeamCity Nuget 安装构建步骤不适用于多个源,其中之一是 TC 的私有 NuGet 源