2015-07-10 98 views
1

目前試圖讓Team City構建.net解決方案,但是我遇到了NuGet包還原的問題。團隊城市Nuget包還原403禁止

scan: Searching for nuget.config files 

它找到項目確定,然後嘗試從nuget.org恢復包。
然而,經過5到7次嘗試(不總是在同一次嘗試)之後,它會失敗並出現403錯誤。
該解決方案通過Visual Studio 2013在本地生成。

請注意,我沒有使用任何定製的NuGet回購站或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(32407建)
nuget.exe 2.8.3

這背後坐着一個企業防火牆/代理,但事實上,它可以恢復一些軟件包使我相信這可能不是問題的路徑原因。

+0

你需要檢查你的代理服務器的日誌,看看問題是否是您的TeamCity代理與代理之間,或之間的代理和NuGet服務器。如果我是一個賭博的人,我會把錢放在你的代理服務器上。 –

回答

0

這發生在我上週的兩次(有兩個不同的csproj's)。

  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),重新運行構建並再次成功!

這兩種情況都讓我想起了NuGet作爲問題原因的脆弱性。另外,當搜索答案時,我似乎遇到了來自不同其他CI供應商的建議,使用-DisableParallelProcessingnuget restore。那麼,我猜,flakiness =並行處理?下次問題再次出現時,我會確保嘗試使用此標記。

的TeamCity服務器8.1.4(建30168)
nuget.exe 2.8.6