Fix publishing symbols for dotnet and hostpolicy
#58844
Merged
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.
The symbols for
dotnetandhostpolicyare not being published to the public Microsoft symbol servers.It looks like we are currently relying on the symbol packages for
Microsoft.NETCore.DotNetHostandMicrosoft.NETCore.DotNetHostPolicyto get symbols fordotnetandhostpolicypublished.The
pkgprojprojects in installer have aPackageReferencetoMicrosoft.DotNet.Build.Tasks.Packaging:runtime/src/installer/pkg/projects/Directory.Build.props
Line 129 in f7b441d
That package includes a target that sets the
SymbolPackageOutputPathbased on thePackageOutputPath.https://github.com/dotnet/arcade/blob/main/src/Microsoft.DotNet.Build.Tasks.Packaging/src/build/Packaging.targets#L63
However, the targets of that package are imported before the project's
Directory.Build.targets, which imports Arcade targets that set the default forPackageOutputPath:https://github.com/dotnet/arcade/blob/main/src/Microsoft.DotNet.Arcade.Sdk/tools/ProjectDefaults.targets#L22
As a result, the symbol packages built by
src/installer/pkg/projects/*.pkgprojend up in the wrong directory - For example, underartifacts\bin\<project_name>\Releaseinstead ofartifacts\packages\Release\Shipping- such that they do not get uploaded and published.This was an unfortunate side effect of #57036.
This change goes back to having
SymbolPackageOutputPathexplicitly set. It is not really intuitive / great, but given the desire to stop having these packages (#35244, which will also need to make sure symbol publishing is covered by other things) and my expectation that we should backport to 6.0, I went with the simply bringing back the previous behaviour.cc @dotnet/runtime-infrastructure @jkoritzinsky @vitek-karas