microsoft / microsoft/aspire

Define a public contract for publisher output path

Open
#18,873 1 comment 0 reactions 1 assignee Claimed by @IEvangelist View on GitHub
area-deployment triage:bot-seen
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues

### Is your feature request related to a problem? Please describe the problem.

`aspire publish --output-path` provides one root, but publishers may need named destinations outside it.

Without a common declaration contract, downstream tools cannot discover which destinations belong to the publish operation; see #9299 and #9914. Having a single output root is also a prerequisite for #18833.

### Describe the solution you'd like

The in-a-nutshell version is: "Aspire tracks destinations declared by publishers". I'm not yet sure how to square that with the singular `--output-path`, as things like .bicep files and GitHub Actions pipelines (as examples) may only have the repo root as the least common ancestor.

1. A publisher can declare one or more publisher-qualified destination names
2. A caller can explicitly configure an external destination (this is needed for #18833)
3. Aspire exposes an inventory keyed by publisher and destination name

### Additional context

_No response_

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.