Skip to content

Commit 387ae54

Browse files
tippmar-nrclaude
andcommitted
ci: disable parallelism for AzureFunction integration tests
Azure Functions Core Tools (func.exe) crashes (exit code -1) when multiple instances launch simultaneously, likely due to shared state in the storage emulator or lock files. Each failure then waits 180s for an agent log that never appears, cascading into ~15min of wasted time. Disable parallelism for this namespace until the contention is resolved. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 45b8524 commit 387ae54

1 file changed

Lines changed: 8 additions & 3 deletions

File tree

.github/workflows/all_solutions.yml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -536,11 +536,16 @@ jobs:
536536
537537
Write-Host "Run tests"
538538
539-
# Parallelization is controlled by workflow input (default: enabled).
540-
# Pre-built test apps (NR_DOTNET_TEST_PREBUILT_APPS=1) eliminate the concurrent
541-
# dotnet publish file-lock collisions that previously required disabling parallelization.
539+
# Most integration tests can run in parallel with pre-built test apps.
540+
# Some namespaces must remain serial because they use shared external tools
541+
# that don't support concurrent instances (e.g., Azure Functions Core Tools
542+
# func.exe crashes when multiple instances launch simultaneously due to shared
543+
# state in storage emulator/lock files). To parallelize these, the shared tool
544+
# contention would need to be resolved.
545+
$noParallelNamespaces = @("AzureFunction")
542546
$parallelize = "${{ inputs.parallelize_integration_tests }}"
543547
if ($parallelize -eq "" -or $parallelize -eq "true") { $parallelize = $true } else { $parallelize = $false }
548+
if ($noParallelNamespaces -contains "${{ matrix.namespace }}") { $parallelize = $false }
544549
$json = Get-Content "${{ env.integration_tests_path }}/xunit.runner.json" | ConvertFrom-Json
545550
$json | Add-Member -Name "parallelizeAssembly" -Value $parallelize -MemberType NoteProperty
546551
$json | Add-Member -Name "parallelizeTestCollections" -Value $parallelize -MemberType NoteProperty

0 commit comments

Comments
 (0)