Skip to content

Commit 004911e

Browse files
JeffreyDallasclaude
andcommitted
ci: switch Docker to Linux engine on Windows before Kind cluster setup
Kind requires Linux containers. On windows-latest, Docker Desktop defaults to Windows containers mode causing Kind to fail with 'npipe:////./pipe/docker_engine: The system cannot find the file'. Add a step to call DockerCli.exe -SwitchLinuxEngine and wait for the daemon to be ready before cluster creation. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 231959e commit 004911e

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

.github/workflows/zxc-e2e-test.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -392,6 +392,26 @@ jobs:
392392
${{ env.CG_EXEC }} ./gradlew assemble --stacktrace --info
393393
cd ../solo
394394
395+
- name: Switch Docker to Linux Engine (Windows)
396+
# Kind requires Linux containers. On windows-latest, Docker Desktop defaults to Windows
397+
# containers mode. Switch to Linux engine and wait for the daemon to become ready.
398+
if: ${{ runner.os == 'Windows' && !cancelled() && !failure() }}
399+
timeout-minutes: ${{ fromJSON(env.STEP_TIMEOUT_MINUTES) }}
400+
shell: pwsh
401+
run: |
402+
& "$env:ProgramFiles\Docker\Docker\DockerCli.exe" -SwitchLinuxEngine
403+
$maxWait = 60
404+
$waited = 0
405+
while ($waited -lt $maxWait) {
406+
try {
407+
$null = docker info 2>&1
408+
if ($LASTEXITCODE -eq 0) { break }
409+
} catch {}
410+
Start-Sleep 3
411+
$waited += 3
412+
}
413+
docker info
414+
395415
- name: Setup E2E Tests
396416
if: ${{ inputs.custom-job-label != 'One Shot Single - using Podman' && !cancelled() && !failure() }}
397417
uses: step-security/retry@e1d59ce1f574b32f0915e3a8df055cfe9f99be5d # v3.0.4

0 commit comments

Comments
 (0)