Team City Nuget包恢复403禁止

时间:2015-07-10 12:21:00

标签: .net nuget teamcity nuget-package-restore

目前正在努力让Team City构建一个.net解决方案,但是我遇到了NuGet包恢复问题。

scan: Searching for nuget.config files

它找到项目正常,然后尝试从nuget.org恢复包 但是,在5到7次尝试之后(并非总是在同一次尝试中),它会因403错误而失败 该解决方案通过Visual Studio 2013在本地构建良好。

请注意,我没有使用任何自定义NuGet repos或TFS,也没有使用任何其他部署工具。

restore: Restoring NuGet packages for XXX.sln
[12:01:58][restore] Installing 'Microsoft.Owin.Host.SystemWeb 1.0.1'.
[12:01:58][restore] The remote server returned an error: (403) Forbidden.

TeamCity服务器版本是9.0.4(build 32407)
nuget.exe 2.8.3

这是企业防火墙/代理的背后,但事实上它可以恢复一些软件包,这让我相信这可能不是导致问题的原因。

1 个答案:

答案 0 :(得分:0)

这在上周发生了两次(有两种不同的csproj)。

  1. 第一次,我把问题留到了早上,当时它刚刚修好了。 :)
  2. 第二次我没那么幸运。所以,我去了构建机器,打开命令提示符并运行TeamCity运行的命令(nuget restore MySolution.sln):

    c:\> C:\TeamCity\buildAgent\tools\NuGet.CommandLine.DEFAULT.nupkg\tools\NuGet.exe restore C:\TeamCityCheckOutDir\624ce5421b617487\MySolution.sln
    

    能够恢复包裹就好了!然后我正常运行TeamCity构建并且它成功了。然后,为了确保,我删除了哈希文件夹(624ce5421b617487),重新运行构建并再次成功!

  3. 这两种情况都让我想到NuGet的瑕疵是问题的原因。此外,在搜索答案时,我似乎遇到了来自不同其他CI供应商的建议,要求-DisableParallelProcessing使用nuget restore。所以,我猜,flakiness =并行处理?我会确保下次问题再次出现时尝试使用此标志。

    TeamCity服务器8.1.4(内部版本30168)
    nuget.exe 2.8.6