Support local tool manifests for AppHost DNX invocation - #19310
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 5ef93c6b-3a80-4def-bd41-ca462a3d26b0
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 19310Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 19310" |
Tests selector (audit mode)The full test matrix and all jobs still run in audit mode. The tests and jobs below are what selective CI would run under enforcement. 43 / 100 test projects · 2 jobs, from 3 changed files. Selected test projects (43 / 100)
Selected jobs (2)
How these were chosen — grouped by what changed
🔧 show 41
📦 affected project 🧪 Job reasons
Selection computed for commit |
There was a problem hiding this comment.
Pull request overview
Adds manifest-aware DNX resolution for AppHost CLI launches while preserving pinned behavior.
Changes:
- Makes
Dnxmanifest-aware. - Adds
DnxPinnedfor SDK-matched CLI resolution. - Updates tests and diagnostics documentation.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
ResolveAspireCliInvocation.cs |
Recognizes DnxPinned. |
Aspire.Hosting.AppHost.in.targets |
Selects pinned or unversioned DNX packages. |
AppHostSdkTargetsTests.cs |
Tests both DNX modes. |
list-of-diagnostics.md |
Documents updated behavior. |
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
|
Retrying the failed CI jobs for this pull request from the CI run attempt. The rerun is being tracked in the rerun attempt. |
dae6eaf
into
main
|
/backport to release/13.5 |
|
Started backporting to |
|
Pull request created: #1484
|
|
📝 Documentation has been drafted in microsoft/aspire.dev#1484 targeting Added a new "Running with dotnet run" subsection to Note This draft PR needs human review before merging. |
Description
C# AppHosts can now opt into DNX resolution that honors an in-scope .NET local tools manifest. This allows a repository to pin
Aspire.Cliin.config/dotnet-tools.jsonand use that version when launching an AppHost throughdotnet run.The supported
AspireCliInvocationModevalues now behave as follows:Pathcontinues to resolve a compatibleaspirecommand fromPATH, falling back to theAspire.Cliversion paired withAspireHostingSDKVersionthrough DNX.Dnxinvokes the unversionedaspire.clipackage through DNX, which honors an in-scope tool manifest or resolves the latest package when no manifest applies.DnxPinnedforces DNX invocation usingaspire.cli@$(AspireHostingSDKVersion).User-facing usage
To use the
Aspire.Cliversion from an in-scope local tools manifest:Use
DnxPinnedinstead when the CLI must match the AppHost SDK version exactly.Fixes #19309
Checklist
<remarks />and<code />elements on your triple slash comments?