Deterministic Builds for Sourcelink (#10237)

* Remove the properties from each .CSProj

* Move this into Directory.Build.props so all CSProj can get all these extra properties

* Add conditional to only add extra property to get the Deterministic green checkmark when running on Azure Pipleine
This commit is contained in:
Warren Buckley
2021-05-06 18:56:43 +01:00
committed by GitHub
parent dabecbf7af
commit cb01e11586
11 changed files with 20 additions and 101 deletions

View File

@@ -17,5 +17,25 @@
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/umbraco/umbraco-cms</RepositoryUrl>
</PropertyGroup>
<PropertyGroup>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<!-- SourceLink: Deterministic -->
<!-- https://github.com/clairernovotny/DeterministicBuilds -->
<!-- Only for Azure Pipelines CI Build -->
<PropertyGroup Condition="'$(TF_BUILD)' == 'true'">
<ContinuousIntegrationBuild>true</ContinuousIntegrationBuild>
</PropertyGroup>
</Project>

View File

@@ -8,16 +8,6 @@
<Title>Umbraco CMS Core</Title>
<Description>Contains the core assembly needed to run Umbraco Cms. This package only contains the assembly, and can be used for package development. Use the template in the Umbraco.Templates package to setup Umbraco</Description>
<Product>Umbraco CMS</Product>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

View File

@@ -10,16 +10,6 @@
<IsPackable>false</IsPackable>
<!-- But we still need to have PackageId for the depdents to know the actual name of the package. -->
<PackageId>Umbraco.Cms.Examine.Lucene</PackageId>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

View File

@@ -6,16 +6,6 @@
<PackageId>Umbraco.Cms.Infrastructure</PackageId>
<Title>Umbraco CMS Infrastructure</Title>
<Description>Contains the infrastructure assembly needed to run Umbraco Cms. This package only contains the assembly, and can be used for package development. Use the template in the Umbraco.Templates package to setup Umbraco</Description>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

View File

@@ -3,16 +3,6 @@
<PropertyGroup>
<TargetFramework>net472</TargetFramework>
<RootNamespace>Umbraco.Cms.Persistence.SqlCe</RootNamespace>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

View File

@@ -7,16 +7,6 @@
<PackageId>Umbraco.Cms.PublishedCache.NuCache</PackageId>
<Title>Umbraco CMS Published Cache</Title>
<Description>Contains the Published Cache assembly needed to run Umbraco Cms. This package only contains the assembly, and can be used for package development. Use the template in the Umbraco.Templates package to setup Umbraco</Description>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

View File

@@ -6,16 +6,6 @@
<PackageId>Umbraco.Cms.Tests</PackageId>
<Title>Umbraco CMS Test Tools</Title>
<Description>Contains commonly used tools to write tests for Umbraco CMS, such as various builders for content etc.</Description>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<ItemGroup>

View File

@@ -7,17 +7,6 @@
<PackageId>Umbraco.Cms.Web.BackOffice</PackageId>
<Title>Umbraco CMS Back Office</Title>
<Description>Contains the Back Office assembly needed to run the back office of Umbraco Cms. This package only contains the assembly, and can be used for package development. Use the template in the Umbraco.Templates package to setup Umbraco</Description>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

View File

@@ -7,16 +7,6 @@
<PackageId>Umbraco.Cms.Web.Common</PackageId>
<Title>Umbraco CMS Web</Title>
<Description>Contains the Web assembly needed to run Umbraco Cms. This package only contains the assembly, and can be used for package development. Use the template in the Umbraco.Templates package to setup Umbraco</Description>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

View File

@@ -3,16 +3,6 @@
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<RootNamespace>Umbraco.Cms.Web.UI.NetCore</RootNamespace>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DocumentationFile>bin\Release\Umbraco.Web.UI.NetCore.xml</DocumentationFile>

View File

@@ -7,16 +7,6 @@
<PackageId>Umbraco.Cms.Web.Website</PackageId>
<Title>Umbraco CMS Website</Title>
<Description>Contains the Website assembly needed to run Umbraco Cms (Front office). This package only contains the assembly, and can be used for package development. Use the template in the Umbraco.Templates package to setup Umbraco</Description>
<!-- SourceLink: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element)-->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<!-- SourceLink: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<!-- SourceLink: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">