Skip to content

fix(ci): avoid full test runs for shared test fixture changes - #21810

Open
Ankit Jain (radical) wants to merge 6 commits into
mainfrom
trigger-map-selection
Open

Ankit Jain (radical) wants to merge 6 commits into
mainfrom
trigger-map-selection

Conversation

@radical

Copy link
Copy Markdown
Member

Description

Narrows CI test selection for shared test inputs so changes run the affected test consumers instead of unnecessarily triggering the full test matrix. This replaces #21495, merges the latest main, and adds regression coverage for CLI E2E Docker image routing and the Podman image's intentional exclusion from regular PR targets.

The focused selector test suite could not complete because package downloads from the approved feeds repeatedly ended prematurely. git diff --check passed.

Fixes # (issue)

Checklist

  • Is this feature complete?
    • Yes. Ready to ship.
    • No. Follow-up changes expected.
  • Are you including unit tests for the changes and scenario tests if relevant?
    • Yes
    • No
  • Did you add public API?
    • Yes
      • If yes, did you have an API Review for it?
        • Yes
        • No
      • Did you add <remarks /> and <code /> elements on your triple slash comments?
        • Yes
        • No
    • No
  • Does the change make any security assumptions or guarantees?
    • Yes
      • If yes, have you done a threat model and had a security review?
        • Yes
        • No
    • No

Ankit Jain (radical) and others added 4 commits October 30, 2026 16:41
A template endpoint fixture change selected every PR test and job because
eng/github-ci/test-trigger-map.yml grouped narrowly consumed shared inputs
under ALL, overriding the graph's precise template-test attribution.

Route shared fixtures and archive-support files to their actual consumers.
Retain runtime-only and deleted-file dependencies, use graph attribution
for imported inputs, and keep Podman outside regular PR selection.

Document the conditional test-archive inputs and verify archive consumers
through evaluated project metadata.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
The existing deleted-certificate test did not cover Hosting's direct
runtime dependency on testCert.pfx.

Exercise the real map without graph attribution for testCert.pfx and
eku.client.pfx. Assert the exact consumer sets so removing Hosting's
runtime edge, adding it for client-only certificates, or selecting
unrelated tests and jobs fails the test.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

🚀 Dogfood this PR with:

⚠️ WARNING: Do not do this without first carefully reviewing the code of this PR to satisfy yourself it is safe.

curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 21810

Or

  • Run remotely in PowerShell:
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 21810"

@aspire-repo-bot
aspire-repo-bot Bot requested a balanced review from Copilot November 5, 2026 18:15
@github-actions github-actions Bot added the area-engineering-systems infrastructure helix infra engineering repo stuff label Nov 5, 2026
@github-actions

This comment has been minimized.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The narrowed CI routes depend on evaluated ProjectGraph ownership, but the focused selector suite could not complete, leaving passing tests and representative full-graph selection traces to be confirmed before merging.

No open issues 🎉

What changed in this PR

Narrows Aspire’s CI test selection for shared test inputs, replacing broad full-matrix triggers with routes to affected consumers while keeping Podman scenarios outside regular PR targets.

Changes:

  • Adds targeted routing for template fixtures, SDK provisioning, certificates, test-archive support, and CLI E2E Docker images.
  • Adds regression coverage for consumer selection, deleted inputs, and Podman exclusion.
  • Documents why archive support and runtime-only inputs need explicit routes.

The PR reports that focused selector tests were blocked by package-download failures; git diff --check passed.

File Description
tests/​Infrastructure.Tests/​TestTriggerMap/​TestTriggerMapTests.cs Adds regression tests for precise shared-input routing and exclusions.
eng/​github-ci/​test-trigger-map.yml Replaces broad shared-fixture triggers with consumer-specific rules.
docs/​ci/​test-trigger-map.md Explains explicit shared-input routes and updates full-matrix trigger examples.

Review effort: Balanced

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

This comment has been minimized.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Missing selector regression coverage for the regular-image/Podman exclusion boundary could allow removal of the ignore entry to restore full test runs without failing the added tests.

1 open issue

Review effort: Balanced

Comment thread eng/github-ci/test-trigger-map.yml Resolved
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

Tests selector

1 / 101 PR test projects · 0 PR jobs, from 2 changed files.

Selected PR test projects (1 / 101)

Infrastructure.Tests

Selected PR jobs (0)

none


How these were chosen — grouped by what changed

📄 eng/github-ci/test-trigger-map.yml (changed)
→ 1 directly: Infrastructure.Tests

🧪 tests/Infrastructure.Tests/TestTriggerMap/TestTriggerMapTests.cs (changed test)
→ 1 directly: Infrastructure.Tests

Job reasons

none


Selection computed for commit b9c7769.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The current-head focused selector suite did not complete, and narrowed CI routing remains unverified against the evaluated MSBuild graph and CI selection traces.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-engineering-systems infrastructure helix infra engineering repo stuff

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants