fsprojects / Paket

A dependency manager for .NET with support for NuGet packages and Git repositories.

Home Page:https://fsprojects.github.io/Paket/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

concurrent package restores sometimes fail

jcmrva opened this issue · comments

Description

We have a bunch of test projects and our CI process runs them in parallel so the test portion doesn't take 20 minutes to complete.

dotnet test << parameters.project >> /p:CollectCoverage=true /p:CoverletOutput='../coverage/' /p:Exclude="[*.Test]*" /p:CoverletOutputFormat="lcov" --logger "trx" -- Expecto.fail-on-focused-tests=true

Transient errors sometimes occur during paket restore. This appears to be the relevant part:

Download of FSharp.Core 7.0.300 done in 429 milliseconds. (52273 kbit/s, 2 MB)
Something went wrong while downloading FSharp.Core 7.0.300
Message: The file '/root/.nuget/packages/fsharp.core/fsharp.core.7.0.300.nupkg' already exists.
==> Last trial
Downloading FSharp.Core 7.0.300
Not moving as '/root/.nuget/packages/fsharp.core/7.0.300/fsharp.core.7.0.300.nupkg' already exists (maybe some other instance downloaded it as well)
Download of FSharp.Core 7.0.300 done in 28 milliseconds. (826700 kbit/s, 2 MB)

No doubt we need to rework the pipeline so the test steps are all using the same build artifact, but could the file-exists check be used to prevent the unneeded retries?

This is Paket v7.2.1