我们正在使用TeamCity 9.0.4。 我们使用集成的TeamCity NuGet提要作为Visual Studio的包源(2010年和2013年)。 我们非常依赖它来交付我们的库和依赖项。
到目前为止,一切都运作良好。这是,直到我们的一个解决方案开始使用大约50个包。
每次我们在TeamCity软件包源代码中的解决方案(也就是说,存在于\packages
文件夹中)中检查软件包已安装的可用更新时,我们都会得到
HTTP / 1.1 406不可接受
来自该服务的回复。
我们使用NuGet包管理器GUI或PowerShell控制台无关紧要:
无论TeamCity安装在何处,都会出现问题。这是TeamCity的本地安装:
使用此软件包源的所有其他功能似乎正常工作(列出可用软件包等)
使用Fiddler,我可以看到发送到Feed服务的请求类型:
WebView显示有关“错误”的一些描述:
此请求标识的资源只能根据请求“接受”标题生成具有不可接受特征的响应
现在,我删除(字面上){2}或\packages
文件夹中名字最长的NuGet包的时刻,Feed再次有效以获取可用更新!
此次发送到服务器的请求看起来不同:
上述所有事情都让我相信问题是包管理器尝试与我的TeamCity NuGet服务器进行大型有效负载通信的方式。
通过此链接,似乎有新的API v2: TeamCity Documentation > What's New in TeamCity 9.0
NuGet feed支持API v2。饲料性能应该更好。
我在TeamCity安装上可以做些什么来使其工作?
答案 0 :(得分:2)
Teamcity将此报告为错误: https://youtrack.jetbrains.com/issue/TW-39347
推荐的解决方案是在配置文件中切换回v1 teamcity.nuget.api.version = V1