dotnet / dotnet/install-scripts

PR validation Windows leg takes ~50 minutes

Offen
#699 0 Kommentare 2 Reaktionen 1 zugewiesene Person Zugewiesen an @Copilot Auf GitHub ansehen
area-infra
Vorherrschende Sprache
PowerShell
Sterne
213
Forks
120
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

PR validation builds are slow, particularly the Windows leg which takes ~50 minutes compared to ~20 minutes for Linux and Mac. Example: build 1400224. The Windows pipeline timeout is already configured at 90 minutes.

Observations:

- All tests run sequentially — no parallelism configured (no xunit.runner.json, single dotnet test per platform)
- Each test downloads a full SDK or runtime — 14 Theory methods × 15 channels/10 branches = 100+ individual download-and-verify cycles
- Same channel matrix tested across multiple runtime types — SDK, dotnet, aspnetcore, windowsdesktop all download independently
- PowerShell startup overhead — each test spawns a new powershell.exe process; adds up over 100+ invocations
- Windows runs additional tests — windowsdesktop + tar support tests only execute on Windows

Areas to consider:

- Test parallelism (in-process or pipeline-level)
- Whether every channel × runtime combination is needed
- PowerShell host choice (pwsh vs powershell.exe)
- Separation of fast vs slow tests
- Pipeline structure across multiple agents

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.