Repository navigation
Expand file tree
/
Copy pathDirectory.Build.props
More file actions
95 lines (80 loc) · 4.75 KB
/
Copy pathDirectory.Build.props
File metadata and controls
95 lines (80 loc) · 4.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<Project>
<PropertyGroup>
<!-- Versioning — bump this single file for all packages -->
<VersionPrefix>4.0.0</VersionPrefix>
<VersionSuffix></VersionSuffix>
<!-- NuGet package metadata -->
<Authors>Erickson Lopez</Authors>
<Company>EricksonLopez</Company>
<Copyright>Copyright © 2026 Erickson Lopez</Copyright>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageProjectUrl>https://ericksonlopez.dev/dotnet-shared-kernel</PackageProjectUrl>
<RepositoryUrl>https://github.com/ericksonlopezf/dotnet-shared-kernel</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageIcon>icon.png</PackageIcon>
<!-- Shared ecosystem tags inherited by all packages -->
<CommonPackageTags>dotnet;csharp;ddd;domain-driven-design;clean-architecture;shared-kernel</CommonPackageTags>
<PackageTags>$(CommonPackageTags)</PackageTags>
<!-- Build settings -->
<LangVersion>latest</LangVersion>
<Nullable>enable</Nullable>
<ImplicitUsings>disable</ImplicitUsings>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<WarningLevel>5</WarningLevel>
<AnalysisLevel>latest-recommended</AnalysisLevel>
<EnforceCodeStyleInBuild>true</EnforceCodeStyleInBuild>
<!-- Strong Naming -->
<SignAssembly Condition="Exists('$(MSBuildThisFileDirectory)EricksonLopez.snk')">true</SignAssembly>
<AssemblyOriginatorKeyFile Condition="Exists('$(MSBuildThisFileDirectory)EricksonLopez.snk')">$(MSBuildThisFileDirectory)EricksonLopez.snk</AssemblyOriginatorKeyFile>
<GenerateDocumentationFile Condition="'$(IsPackable)' != 'false'">true</GenerateDocumentationFile>
<!-- Deterministic builds (important for NuGet reproducibility) -->
<Deterministic>true</Deterministic>
<ContinuousIntegrationBuild Condition="'$(CI)' == 'true'">true</ContinuousIntegrationBuild>
<!-- SourceLink -->
<PublishRepositoryUrl>true</PublishRepositoryUrl>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<!-- Security -->
<NuGetAudit>true</NuGetAudit>
<NuGetAuditMode>all</NuGetAuditMode>
<NuGetAuditLevel>low</NuGetAuditLevel>
<EnablePackageValidation Condition="'$(IsPackable)' == 'true'">true</EnablePackageValidation>
<PackageValidationBaselineVersion>3.0.0</PackageValidationBaselineVersion>
<PublicKey Condition="'$(SignAssembly)' == 'true'">0024000004800000940000000602000000240000525341310004000001000100655c867cb6d2e3a8d53e10d858994a49ea6b428de6e1e2eec19c71f0409345a7bf1649e9208282982347d90153f237f1aef003468e4a913598faa0b96815de53ede401790587fef88c7869884cdbf4372e74a44facf7dd6995e9b832285f8c548f531e1886d6712632139b617cd4f13988021b7cc32b5c3af18f52e19ae2a6cc</PublicKey>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(SignAssembly)' == 'true'">
<InternalsVisibleTo>
<Key>$(PublicKey)</Key>
</InternalsVisibleTo>
</ItemDefinitionGroup>
<ItemGroup>
<PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="All" />
</ItemGroup>
<ItemGroup Condition="'$(IsPackable)' == 'true'">
<None Include="$(MSBuildThisFileDirectory)README.md" Pack="true" PackagePath="\" Visible="false" Condition="Exists('$(MSBuildThisFileDirectory)README.md')" />
<None Include="$(MSBuildThisFileDirectory)icon.png" Pack="true" PackagePath="\" Visible="false" Condition="Exists('$(MSBuildThisFileDirectory)icon.png')" />
</ItemGroup>
<!-- Test Projects Categorization for SonarCloud & MSBuild -->
<PropertyGroup Condition="$(MSBuildProjectFullPath.Contains('tests')) and !$(MSBuildProjectFullPath.Contains('TestingUtilities')) and !$(MSBuildProjectFullPath.Contains('NativeAotTests'))">
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
<SonarQubeTestProject>true</SonarQubeTestProject>
<GenerateDocumentationFile>false</GenerateDocumentationFile>
</PropertyGroup>
<!-- Testing Utilities Library -->
<PropertyGroup Condition="$(MSBuildProjectFullPath.Contains('TestingUtilities'))">
<IsPackable>false</IsPackable>
<IsTestProject>false</IsTestProject>
<SonarQubeTestProject>true</SonarQubeTestProject>
<GenerateDocumentationFile>false</GenerateDocumentationFile>
</PropertyGroup>
<!-- Non-production Executables (Samples, Benchmarks & Smoke Harness) Excluded from SonarCloud Analysis -->
<PropertyGroup Condition="$(MSBuildProjectFullPath.Contains('samples')) or $(MSBuildProjectFullPath.Contains('benchmarks')) or $(MSBuildProjectFullPath.Contains('NativeAotTests'))">
<IsPackable>false</IsPackable>
<IsTestProject>false</IsTestProject>
<SonarQubeExclude>true</SonarQubeExclude>
<GenerateDocumentationFile>false</GenerateDocumentationFile>
</PropertyGroup>
</Project>