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:
|
include:
|
||||||
- '*'
|
- '*'
|
||||||
|
|
||||||
|
variables:
|
||||||
|
- name: DOTNET_SKIP_FIRST_TIME_EXPERIENCE
|
||||||
|
value: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
- template: jobs/default-build.yml
|
- template: jobs/default-build.yml
|
||||||
parameters:
|
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>
|
<MicrosoftNETTestSdkPackageVersion>15.9.0</MicrosoftNETTestSdkPackageVersion>
|
||||||
<MicrosoftSourceLinkGitHubPackageVersion>1.0.0-beta2-18618-05</MicrosoftSourceLinkGitHubPackageVersion>
|
<MicrosoftSourceLinkGitHubPackageVersion>1.0.0-beta2-18618-05</MicrosoftSourceLinkGitHubPackageVersion>
|
||||||
<MicrosoftSourceLinkVstsGitPackageVersion>1.0.0-beta2-18618-05</MicrosoftSourceLinkVstsGitPackageVersion>
|
<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 -->
|
<!-- Stable dotnet/corefx packages no longer updated for .NET Core 3 -->
|
||||||
<SystemBuffersPackageVersion>4.5.0</SystemBuffersPackageVersion>
|
<SystemBuffersPackageVersion>4.5.0</SystemBuffersPackageVersion>
|
||||||
<SystemCodeDomPackageVersion>4.4.0</SystemCodeDomPackageVersion>
|
<SystemCodeDomPackageVersion>4.4.0</SystemCodeDomPackageVersion>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue