Add Windows Docker (WSL2) tier-1 integration tests#8742
Add Windows Docker (WSL2) tier-1 integration tests#8742roger-zhangg merged 65 commits intodevelopfrom
Conversation
…inux-only durable tests on Windows
…ler, SCRIPT_PY detection; fix durable emulator temp file on Windows
|
nightly-release: https://github.com/aws/aws-sam-cli/actions/runs/22754885227/job/65997053835 |
vicheey
left a comment
There was a problem hiding this comment.
Thank you for spliting the setup. Overall, this PR looks good.
I see that there are 3 inline comments about how we slip the build suites but commented but not be sufficient for a future maintainer to notice or understand. We should document the rationale and methodology in one for the README.
|
latest run: |
Summary
Adds Windows tier-1 integration tests running Docker via WSL2, alongside the existing Linux Finch tier-1 tests.
Changes
New Windows test suites
tier1-windows-build-1: Python, .NET, Node, main build teststier1-windows-build-2: Java, Rust, Provided, ARM64 build teststier1-windows-build-3: Go, Ruby, Terraform, remaining build teststier1-windows-other: Local invoke, start-api, start-lambda, validate, and other non-build testsInfrastructure
Vampire/setup-wslaction with Ubuntu 24.04 (installed on D: drive for disk space)tests/setup_wsl2_docker.sh: Installs Docker in WSL2 and exposes on TCPtests/free_disk_space_windows.sh: Non-blocking cleanup of pre-installed SDKstests/install-maven-gradle.sh,tests/install-terraform.sh: Cross-platform installer scriptstests/install-rust.sh: Updated withchoco install zigfor Windows,--uvflag supporttests/install-sam-cli-binary.sh: Windows MSI supportChanges
New Windows test suites
tier1-windows-build-1: Python, .NET, Node, main build teststier1-windows-build-2: Java, Rust, Provided, ARM64 buildtier1-windows-build-3: Go, Ruby, Terraform, remaining buildtier1-windows-other: Local invoke, start-api, start-lambda, valiinInfrastructure
Vampire/setup-wslaction with Ubuntu 24.04 (installe- WSL2 Docker setou-tests/setup_wsl2_docker.sh`: Installs Docker in WSL2 and exposes on TCPtests/free_disk_space_windole-tests/free_disk_space_windows.sh: Non-blocking cleanup of pre-installon-tests/install-maven-gradle.sh,tests/install-terraform.sh: Cross-platfo i-tests/install-rust.sh: Updated withchoco install zigfor Windows,--uvflag support -pe-tests/installmaven-gradle.sh,tests/install-terraform.sh`: Cross-platform installer scriptstests/install-rust.sh: Updated withchoco install zigfor Windows,--uvflag supporttests/install-sam-cli-binary.sh: Windows MSI support withAWSSAMCLI_NIGHTLYdetection andSAM_WINDOWS_BINARY_PATHtests/setup-python-uv.sh: Python version management via uvtests/setup_testing_resources.py: Consolidated credential setup, ECR login (with retry), and credential clearing into one scriptFixes
reset_testing_resources.py: Search workspace root for reports, non-fatal account reset errorsKnown Issues
Windows durable function tests (
test_invoke_durable,test_callback,test_execution) are failing intier1-windows-other. The durable functions emulator has issues with temp directory handling when Docker runs via WSL2 — a subsequent PR will address this specifically.