fix: guard SonarLint ruleset refs with Exists() condition

.sonarlint/ is gitignored so CI and fresh clones lack these files. Unconditional CodeAnalysisRuleSet reference caused MSB3884 error which with /warnaserror broke Release builds and froze JB InspectCode.
This commit is contained in:
Miha Kralj
2026-03-01 13:45:47 -08:00
parent 89fa0757ef
commit 19df6763a9
+5 -3
View File
@@ -78,11 +78,13 @@
<Exclude>[xunit.*]*,[*.Tests]*</Exclude> <Exclude>[xunit.*]*,[*.Tests]*</Exclude>
</PropertyGroup> </PropertyGroup>
<!-- SonarLint local rule configuration --> <!-- SonarLint local rule configuration (IDE-only, not committed to git)
<PropertyGroup> The SonarLint VS/VSCode plugin manages .sonarlint/ locally.
SonarAnalyzer.CSharp NuGet provides build-time analysis; suppressions are in <NoWarn> above. -->
<PropertyGroup Condition="Exists('$(MSBuildThisFileDirectory).sonarlint\csharp.ruleset')">
<CodeAnalysisRuleSet>$(MSBuildThisFileDirectory).sonarlint\csharp.ruleset</CodeAnalysisRuleSet> <CodeAnalysisRuleSet>$(MSBuildThisFileDirectory).sonarlint\csharp.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup Condition="Exists('$(MSBuildThisFileDirectory).sonarlint\CSharp\SonarLint.xml')">
<AdditionalFiles Include="$(MSBuildThisFileDirectory).sonarlint\CSharp\SonarLint.xml"> <AdditionalFiles Include="$(MSBuildThisFileDirectory).sonarlint\CSharp\SonarLint.xml">
<Link>Properties\SonarLint.xml</Link> <Link>Properties\SonarLint.xml</Link>
</AdditionalFiles> </AdditionalFiles>