Repository navigation
Add Azure Linux 4.0 CI test coverage - #2651
Conversation
|
Azure Pipelines: Successfully started running 1 pipeline(s). There may be pipelines that require an authorized user to comment /azp run to run. |
There was a problem hiding this comment.
🔵 Needs a closer look
The Azure Linux 4.0 image remains untested in Linux CI, leaving container startup and all five release-gating configurations, especially FIPS with and without cgo, unverified.
No open issues 🎉
What changed in this PR
Adds Azure Linux 4.0 amd64 CI coverage alongside Azure Linux 3.0, using the shared pipeline matrix and container-generation infrastructure.
Changes:
- Adds five Azure Linux 4.0 configurations covering Go crypto, system crypto with and without cgo, and both system crypto modes with FIPS enabled.
- Registers the container image, adds job routing, and updates all four generated pipelines.
- Documents the coverage and adds regression checks for matrix parity, routing, and container resources.
| File | Description |
|---|---|
| eng/pipeline/stages/run-stage.yml | Routes Azure Linux 4 jobs to their container. |
| eng/pipeline/stages/go-builder-matrix-stages.yml | Adds five Azure Linux 4 test configurations. |
| eng/pipeline/rolling-pipeline.yml | Registers the image for internal rolling runs. |
| eng/pipeline/rolling-innerloop-pipeline.yml | Registers the image for internal innerloop runs. |
| eng/pipeline/README.md | Documents coverage and container regeneration. |
| eng/pipeline/pr-pipeline.yml | Registers the image for public PR runs. |
| eng/pipeline/pr-outerloop-pipeline.yml | Registers the image for public outerloop runs. |
| eng/pipeline/data/containers.yml | Adds the image to shared container definitions. |
| eng/_util/cmd/pipelineymlgen/pipelineymlgen_test.go | Checks matrix parity, container routing, and pipeline resources. |
Review effort: Balanced
This comment was marked as outdated.
This comment was marked as outdated.
|
/azp run microsoft-go |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
|
The remaining ML-DSA failure now has prepared fixes:
Tested the actual published Azure Linux 4 ARM64 image with SymCrypt/OpenSSL 3.5.4. |
2fbe8db to
4f98073
Compare
Mirror all five Azure Linux 3.0 amd64 innerloop configurations on Azure Linux 4.0: Go crypto, system crypto with and without cgo, and FIPS for both system crypto modes. Register the published CI image, route jobs to it, regenerate pipeline resources, and add coverage regression tests and documentation. Preserve all existing jobs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep the existing pipeline generation reproducibility test unchanged. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
4f98073 to
f00e1a7
Compare
Native validation stack
Top layer of stack #2664: #2662 (provider-aware ML-DSA fallback, pinned to merged OpenSSL main SHA
c9be04267896) → this Azure Linux 4 matrix. The stack lands onmicrosoft/main.This PR now includes the fix underneath it so its Azure Linux 4 jobs can validate the actual integration. Its focused diff remains CI configuration only; no new tests or README changes. Auto-merge is disabled; use the native stack merge flow.
Summary
Add Azure Linux 4.0 amd64 testing alongside the existing Azure Linux 3.0 coverage.
mcr.microsoft.com/microsoft-go/infra-images:azurelinux-4.0-amd64-defaultimage and routeazurelinux4jobs to it.Validation
cd eng/_util && go test ./cmd/pipelineymlgen -count=1passes (existing pipeline generation reproducibility test; no new tests added).go vet ./cmd/pipelineymlgenpasses.git diff --checkpasses.