-
Notifications
You must be signed in to change notification settings - Fork 367
Opt-in TargetRid publish mode #15549
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
To enable us to fully dedup our vertical asset manifests in the VMR, we need some mechanism to specify that RID-agnostic packages shouldn't be published in particular verticals. One options would be to have the VMR automatically use "Vertical" visibility as the default for all non-"Win-x64 BuildPass1" legs and require repos that have RID-specific assets to mark them with the correct visibility. In this model, every repo that has RID specific assets would have to have almost the same logic in Publishing.props. Another option (this PR) is to add support into Arcade for a switch to automatically only add RID-specific packages as non-Vertical packages by default. This model ensures that we don't need to change every repo that produces RID-specific artifacts. It also provides a mechanism to opt-in for repositories that need to publish in this manner normally (useful for dotnet/runtime for the short period between the MicroBuild fixes and the official build being shut off).
Regressed with #15549 MSBuild doesn't allow Condition attributes on Choose elements.
This opt-in is now used in the VMR but most repos don't have access to the But other repositories might hit this as well in the future when RID specific packages get added that we don't account for today. I think we should pass that property in globally to all repositories. dotnet/source-build#4313 tracks that. |
To enable us to fully dedup our vertical asset manifests in the VMR, we need some mechanism to specify that RID-agnostic packages shouldn't be published in particular verticals.
One options would be to have the VMR automatically use "Vertical" visibility as the default for all non-"Win-x64 BuildPass1" legs and require repos that have RID-specific assets to mark them with the correct visibility. In this model, every repo that has RID specific assets would have to have almost the same logic in Publishing.props.
Another option (this PR) is to add support into Arcade for a switch to automatically only add RID-specific packages as non-Vertical packages by default. This model ensures that we don't need to change every repo that produces RID-specific artifacts. It also provides a mechanism to opt-in for repositories that need to publish in this manner normally (useful for dotnet/runtime for the short period between the MicroBuild fixes and the official build being shut off).
To double check:
Contributes to dotnet/source-build#4905