ci: pin WSL kernel installer and participation selectors

This commit is contained in:
Neil
2026-09-06 05:06:18 -07:00
parent 92fc5152dd
commit cef2d0553c
2 changed files with 4 additions and 0 deletions
@@ -15,6 +15,7 @@ wsl.exe --distribution Ubuntu --user root --exec /usr/bin/apt-get install --yes
if ($LASTEXITCODE -ne 0) { throw "WSL git install failed: $LASTEXITCODE" }
$kernelMsi = Join-Path $env:RUNNER_TEMP 'wsl_update_x64.msi'
Invoke-WebRequest 'https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi' -OutFile $kernelMsi
if ((Get-FileHash $kernelMsi -Algorithm SHA256).Hash.ToLowerInvariant() -ne '4d09c776c8d45f70a202281d18e19be1118f53159b0c217a5274a31ce18525fe') { throw 'WSL kernel installer checksum mismatch' }
$installer = Start-Process msiexec.exe -ArgumentList @('/i', $kernelMsi, '/quiet', '/norestart') -Wait -PassThru
if ($installer.ExitCode -ne 0) { throw "WSL kernel installation failed: $($installer.ExitCode)" }
wsl.exe --status
@@ -46,6 +46,9 @@ describe('real WSL terminal lane', () => {
expect(steps.some((step) => step.uses === './.github/actions/setup-wsl-test-runtime')).toBe(
true
)
const exercise = steps.find((step) => step.name === 'Exercise real WSL launch and paste')
expect(exercise.run).toContain('--repeat-each=3')
expect(exercise.run).toContain('--grep "WSL"')
const receipt = steps.find((step) => step.name === 'Require all nine WSL executions')
expect(receipt.if).toBe('always()')
expect(receipt.run).toBe(