Perform symbol publication using Microsoft.SymbolUploader.Build.Task (#10358)
- aspnet/AspNetCore-Internal#2126 - allow release pipeline to publish symbols on all builds: #10113 - add new project that publishes symbols to MSDL and SymWeb - release pipeline prepares then restores and builds the new project - expire symbols after 10 years (or so) nits: - add `$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE` to ci.yml
This commit is contained in:
parent
2c70498c13
commit
3bb9cda189
|
|
@ -17,6 +17,10 @@ pr:
|
|||
include:
|
||||
- '*'
|
||||
|
||||
variables:
|
||||
- name: DOTNET_SKIP_FIRST_TIME_EXPERIENCE
|
||||
value: true
|
||||
|
||||
jobs:
|
||||
- template: jobs/default-build.yml
|
||||
parameters:
|
||||
|
|
|
|||
|
|
@ -0,0 +1,62 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk" DefaultTargets="RunPublishSymbols">
|
||||
<PropertyGroup>
|
||||
<!-- TFM doesn't matter. These settings are required to make NuGet happy so we can restore required MSBuild packages. -->
|
||||
<TargetFramework>netcoreapp3.0</TargetFramework>
|
||||
<DisableImplicitFrameworkReferences>true</DisableImplicitFrameworkReferences>
|
||||
<ManifestsPath>artifacts\manifests\</ManifestsPath>
|
||||
<DisablePackageReferenceRestrictions>true</DisablePackageReferenceRestrictions>
|
||||
|
||||
<!-- Expire symbols after 10 years (or so) by default. -->
|
||||
<DotNetSymbolExpirationInDays Condition="'$(DotNetSymbolExpirationInDays)' == ''">3650</DotNetSymbolExpirationInDays>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.SymbolUploader.Build.Task" Version="$(MicrosoftSymbolUploaderBuildTaskPackageVersion)" />
|
||||
</ItemGroup>
|
||||
|
||||
<!--
|
||||
Initially copied from
|
||||
https://github.com/dotnet/core-setup/blob/19390ee14c2824c39db393aff75a95788ececebf/publish/publish.proj#L242-L286
|
||||
-->
|
||||
<Target Name="RunPublishSymbols">
|
||||
<ItemGroup>
|
||||
<SymbolServerConfig
|
||||
Include="MSDL (public symbols server)"
|
||||
Url="https://microsoftpublicsymbols.artifacts.visualstudio.com/DefaultCollection"
|
||||
Pat="$(MicrosoftSymbolServerPAT)" />
|
||||
|
||||
<SymbolServerConfig
|
||||
Include="SymWeb (internal symbols server)"
|
||||
Url="https://microsoft.artifacts.visualstudio.com/DefaultCollection"
|
||||
Pat="$(SymwebSymbolServerPAT)" />
|
||||
</ItemGroup>
|
||||
|
||||
<Error
|
||||
Condition="'%(SymbolServerConfig.Pat)' == ''"
|
||||
Text="Missing symbol server publish PAT for '%(SymbolServerConfig.Identity)'" />
|
||||
|
||||
<!-- Could also set SymbolDryRun, SymbolExpirationInDays or SymbolVerboseLogging. -->
|
||||
<ItemGroup>
|
||||
<SymbolServerPublishProject
|
||||
Include="$(MSBuildProjectFullPath)"
|
||||
AdditionalProperties="
|
||||
SymbolServerDescription=%(SymbolServerConfig.Identity);
|
||||
SymbolServerPath=%(SymbolServerConfig.Url);
|
||||
SymbolServerPAT=%(SymbolServerConfig.Pat)" />
|
||||
</ItemGroup>
|
||||
|
||||
<!-- Note: Can't run in parallel. Symbol publish opens the zips exclusively. -->
|
||||
<MSBuild
|
||||
Projects="@(SymbolServerPublishProject)"
|
||||
Targets="SetupPublishSymbols;PublishSymbols"
|
||||
Properties="SymbolDirectory=$(SymbolDirectory)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="SetupPublishSymbols">
|
||||
<ItemGroup>
|
||||
<SymbolPackagesToPublish Include="$(SymbolDirectory)/**/*.symbols.nupkg" />
|
||||
</ItemGroup>
|
||||
|
||||
<Message Importance="High" Text="Publishing symbol packages to '$(SymbolServerDescription)':%0A @(SymbolPackagesToPublish, '%0A ')"/>
|
||||
</Target>
|
||||
</Project>
|
||||
|
|
@ -140,6 +140,7 @@
|
|||
<MicrosoftNETTestSdkPackageVersion>15.9.0</MicrosoftNETTestSdkPackageVersion>
|
||||
<MicrosoftSourceLinkGitHubPackageVersion>1.0.0-beta2-18618-05</MicrosoftSourceLinkGitHubPackageVersion>
|
||||
<MicrosoftSourceLinkVstsGitPackageVersion>1.0.0-beta2-18618-05</MicrosoftSourceLinkVstsGitPackageVersion>
|
||||
<MicrosoftSymbolUploaderBuildTaskPackageVersion>1.0.0-beta-64023-03</MicrosoftSymbolUploaderBuildTaskPackageVersion>
|
||||
<!-- Stable dotnet/corefx packages no longer updated for .NET Core 3 -->
|
||||
<SystemBuffersPackageVersion>4.5.0</SystemBuffersPackageVersion>
|
||||
<SystemCodeDomPackageVersion>4.4.0</SystemCodeDomPackageVersion>
|
||||
|
|
|
|||
Loading…
Reference in New Issue