microsoft / microsoft/aspire

Move polyglot SDK validation tests to CLI E2E test infrastructure

Open
#16,301 0 comments 0 reactions 0 assignees View on GitHub
area-engineering-systems area-polyglot
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

## Problem

The polyglot SDK validation tests (`.github/workflows/polyglot-validation.yml`) run as standalone Docker builds in CI. These tests are fragile because they build Docker images that run `apt-get` and `curl` against external package mirrors, which frequently fail with transient errors (504s, digest mismatches, timeouts).

Example failure from https://github.com/microsoft/aspire/actions/runs/24609589983/job/71961739197:
```
#8 0.165 curl: (22) The requested URL returned error: 504
Process completed with exit code 4.
```

These tests consistently fail across unrelated PRs due to infrastructure issues, blocking merges.

## Proposal

Move the polyglot SDK validation tests (Python, Java, Go, Rust, TypeScript) to the CLI E2E test infrastructure (`Aspire.Cli.EndToEnd.Tests`). This would:

- Use the existing Hex1b terminal automation for consistent test execution
- Share the CLI E2E Docker base image instead of building separate images per language
- Benefit from retry logic and better error reporting in the E2E framework
- Reduce CI flakiness from transient network failures during Docker builds
- Align with how other CLI-driven tests are structured

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.