Define a concept of Artifact Visibility #15344
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Asset Visibility
As part of building the VMR, we've found that we need to produce assets in multiple jobs that we used to produce in only one job. We have talked about doing asset selection through a list of jobs or asset name patterns. This works when we're only producing the assets that we want to publish.
However, we've discovered that in the VMR, we also need to build some additional packages that we never want to ship that we are effectively forced to name like a shipping package (in particular, we need to build a crossgen2 and ilc for the build host machine). These host-machine packages aren't assets we want to ship as they are built using LKG assets and assets that aren't targeting our "portable" build setup.
To handle these cases, we'd have to be very careful with a priority list of verticals as it would need to consider the machines we build on (so macOS x64 and macOS arm64 ordering would have to be ordered such that the primary vertical matches our build machine).
We looked at different artifact types and determined we have 3 visibilities, separate from Shipping/NonShipping:
To double check: