159 lines
9.8 KiB
XML
159 lines
9.8 KiB
XML
<Project>
|
|
<Target Name="ConcelierCopyPluginArtifacts" AfterTargets="Build" Condition="'$(IsConcelierPlugin)' == 'true'">
|
|
<PropertyGroup>
|
|
<ConcelierPluginOutputDirectory>$(ConcelierPluginOutputRoot)\$(MSBuildProjectName)</ConcelierPluginOutputDirectory>
|
|
</PropertyGroup>
|
|
|
|
<MakeDir Directories="$(ConcelierPluginOutputDirectory)" />
|
|
|
|
<ItemGroup>
|
|
<ConcelierPluginArtifacts Include="$(TargetPath)" />
|
|
<ConcelierPluginArtifacts Include="$(TargetPath).deps.json" Condition="Exists('$(TargetPath).deps.json')" />
|
|
<ConcelierPluginArtifacts Include="$(TargetDir)$(TargetName).pdb" Condition="Exists('$(TargetDir)$(TargetName).pdb')" />
|
|
</ItemGroup>
|
|
|
|
<Copy SourceFiles="@(ConcelierPluginArtifacts)" DestinationFolder="$(ConcelierPluginOutputDirectory)" SkipUnchangedFiles="true" />
|
|
</Target>
|
|
|
|
<Target Name="AuthorityCopyPluginArtifacts" AfterTargets="Build" Condition="'$(IsAuthorityPlugin)' == 'true'">
|
|
<PropertyGroup>
|
|
<AuthorityPluginOutputDirectory>$(AuthorityPluginOutputRoot)\$(MSBuildProjectName)</AuthorityPluginOutputDirectory>
|
|
</PropertyGroup>
|
|
|
|
<MakeDir Directories="$(AuthorityPluginOutputDirectory)" />
|
|
|
|
<ItemGroup>
|
|
<AuthorityPluginArtifacts Include="$(TargetPath)" />
|
|
<AuthorityPluginArtifacts Include="$(TargetPath).deps.json" Condition="Exists('$(TargetPath).deps.json')" />
|
|
<AuthorityPluginArtifacts Include="$(TargetDir)$(TargetName).pdb" Condition="Exists('$(TargetDir)$(TargetName).pdb')" />
|
|
</ItemGroup>
|
|
|
|
<Copy SourceFiles="@(AuthorityPluginArtifacts)" DestinationFolder="$(AuthorityPluginOutputDirectory)" SkipUnchangedFiles="true" />
|
|
</Target>
|
|
|
|
<Target Name="NotifyCopyPluginArtifacts" AfterTargets="Build" Condition="'$(IsNotifyPlugin)' == 'true'">
|
|
<PropertyGroup>
|
|
<NotifyPluginDirectoryName>$([System.String]::Copy('$(MSBuildProjectName)').Replace('StellaOps.Notify.Connectors.', '').ToLowerInvariant())</NotifyPluginDirectoryName>
|
|
<NotifyPluginOutputDirectory>$(NotifyPluginOutputRoot)\$(NotifyPluginDirectoryName)</NotifyPluginOutputDirectory>
|
|
</PropertyGroup>
|
|
|
|
<MakeDir Directories="$(NotifyPluginOutputDirectory)" />
|
|
|
|
<ItemGroup>
|
|
<NotifyPluginArtifacts Include="$(TargetPath)" />
|
|
<NotifyPluginArtifacts Include="$(TargetPath).deps.json" Condition="Exists('$(TargetPath).deps.json')" />
|
|
<NotifyPluginArtifacts Include="$(TargetDir)$(TargetName).pdb" Condition="Exists('$(TargetDir)$(TargetName).pdb')" />
|
|
<NotifyPluginArtifacts Include="$(ProjectDir)notify-plugin.json" Condition="Exists('$(ProjectDir)notify-plugin.json')" />
|
|
</ItemGroup>
|
|
|
|
<Copy SourceFiles="@(NotifyPluginArtifacts)" DestinationFolder="$(NotifyPluginOutputDirectory)" SkipUnchangedFiles="true" />
|
|
</Target>
|
|
|
|
<Target Name="ScannerCopyBuildxPluginArtifacts" AfterTargets="Build" Condition="'$(IsScannerBuildxPlugin)' == 'true'">
|
|
<PropertyGroup>
|
|
<ScannerBuildxPluginOutputDirectory>$(ScannerBuildxPluginOutputRoot)\$(MSBuildProjectName)</ScannerBuildxPluginOutputDirectory>
|
|
</PropertyGroup>
|
|
|
|
<MakeDir Directories="$(ScannerBuildxPluginOutputDirectory)" />
|
|
|
|
<ItemGroup>
|
|
<ScannerBuildxPluginArtifacts Include="$(TargetPath)" />
|
|
<ScannerBuildxPluginArtifacts Include="$(TargetPath).deps.json" Condition="Exists('$(TargetPath).deps.json')" />
|
|
<ScannerBuildxPluginArtifacts Include="$(TargetDir)$(TargetName).pdb" Condition="Exists('$(TargetDir)$(TargetName).pdb')" />
|
|
<ScannerBuildxPluginArtifacts Include="$(ProjectDir)stellaops.sbom-indexer.manifest.json" Condition="Exists('$(ProjectDir)stellaops.sbom-indexer.manifest.json')" />
|
|
</ItemGroup>
|
|
|
|
<Copy SourceFiles="@(ScannerBuildxPluginArtifacts)" DestinationFolder="$(ScannerBuildxPluginOutputDirectory)" SkipUnchangedFiles="true" />
|
|
</Target>
|
|
|
|
<Target Name="ScannerCopyOsAnalyzerPluginArtifacts" AfterTargets="Build" Condition="'$(IsScannerOsAnalyzerPlugin)' == 'true'">
|
|
<PropertyGroup>
|
|
<ScannerOsAnalyzerPluginOutputDirectory>$(ScannerOsAnalyzerPluginOutputRoot)\$(MSBuildProjectName)</ScannerOsAnalyzerPluginOutputDirectory>
|
|
</PropertyGroup>
|
|
|
|
<MakeDir Directories="$(ScannerOsAnalyzerPluginOutputDirectory)" />
|
|
|
|
<ItemGroup>
|
|
<ScannerOsAnalyzerPluginArtifacts Include="$(TargetPath)" />
|
|
<ScannerOsAnalyzerPluginArtifacts Include="$(TargetPath).deps.json" Condition="Exists('$(TargetPath).deps.json')" />
|
|
<ScannerOsAnalyzerPluginArtifacts Include="$(TargetDir)$(TargetName).pdb" Condition="Exists('$(TargetDir)$(TargetName).pdb')" />
|
|
<ScannerOsAnalyzerPluginArtifacts Include="$(ProjectDir)manifest.json" Condition="Exists('$(ProjectDir)manifest.json')" />
|
|
</ItemGroup>
|
|
|
|
<Copy SourceFiles="@(ScannerOsAnalyzerPluginArtifacts)" DestinationFolder="$(ScannerOsAnalyzerPluginOutputDirectory)" SkipUnchangedFiles="true" />
|
|
</Target>
|
|
|
|
<Target Name="ScannerCopyLangAnalyzerPluginArtifacts" AfterTargets="Build" Condition="'$(IsScannerLangAnalyzerPlugin)' == 'true'">
|
|
<PropertyGroup>
|
|
<ScannerLangAnalyzerPluginOutputDirectory>$(ScannerLangAnalyzerPluginOutputRoot)\$(MSBuildProjectName)</ScannerLangAnalyzerPluginOutputDirectory>
|
|
</PropertyGroup>
|
|
|
|
<MakeDir Directories="$(ScannerLangAnalyzerPluginOutputDirectory)" />
|
|
|
|
<ItemGroup>
|
|
<ScannerLangAnalyzerPluginArtifacts Include="$(TargetPath)" />
|
|
<ScannerLangAnalyzerPluginArtifacts Include="$(TargetPath).deps.json" Condition="Exists('$(TargetPath).deps.json')" />
|
|
<ScannerLangAnalyzerPluginArtifacts Include="$(TargetDir)$(TargetName).pdb" Condition="Exists('$(TargetDir)$(TargetName).pdb')" />
|
|
<ScannerLangAnalyzerPluginArtifacts Include="$(ProjectDir)manifest.json" Condition="Exists('$(ProjectDir)manifest.json')" />
|
|
</ItemGroup>
|
|
|
|
<Copy SourceFiles="@(ScannerLangAnalyzerPluginArtifacts)" DestinationFolder="$(ScannerLangAnalyzerPluginOutputDirectory)" SkipUnchangedFiles="true" />
|
|
</Target>
|
|
|
|
<Target
|
|
Name="RouterPackTransportPluginsForWebPublish"
|
|
AfterTargets="Publish"
|
|
Condition="('$(UsingMicrosoftNETSdkWeb)' == 'true' or '$(EnableRouterTransportPluginPackaging)' == 'true') and '$(IsTestProject)' != 'true' and '$(DisableRouterTransportPluginPackaging)' != 'true'">
|
|
<PropertyGroup>
|
|
<RouterTransportPluginProject Condition="'$(RouterTransportPluginProject)' == ''">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)Router\__Libraries\StellaOps.Router.Transport.Messaging\StellaOps.Router.Transport.Messaging.csproj'))</RouterTransportPluginProject>
|
|
<MessagingTransportPluginProject Condition="'$(MessagingTransportPluginProject)' == ''">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)Router\__Libraries\StellaOps.Messaging.Transport.Valkey\StellaOps.Messaging.Transport.Valkey.csproj'))</MessagingTransportPluginProject>
|
|
<RouterTransportPluginSourceDir Condition="'$(RouterTransportPluginSourceDir)' == ''">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)Router\__Libraries\StellaOps.Router.Transport.Messaging\bin\$(Configuration)\$(TargetFramework)'))</RouterTransportPluginSourceDir>
|
|
<MessagingTransportPluginSourceDir Condition="'$(MessagingTransportPluginSourceDir)' == ''">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)Router\__Libraries\StellaOps.Messaging.Transport.Valkey\bin\$(Configuration)\$(TargetFramework)'))</MessagingTransportPluginSourceDir>
|
|
</PropertyGroup>
|
|
|
|
<MSBuild
|
|
Projects="$(RouterTransportPluginProject);$(MessagingTransportPluginProject)"
|
|
Targets="Restore;Build"
|
|
Properties="Configuration=$(Configuration);TargetFramework=$(TargetFramework);CopyLocalLockFileAssemblies=true"
|
|
BuildInParallel="false" />
|
|
|
|
<ItemGroup>
|
|
<_RouterTransportPlugins Include="$(RouterTransportPluginSourceDir)\StellaOps*.dll" />
|
|
<_RouterTransportPluginMetadata Include="$(RouterTransportPluginSourceDir)\*.deps.json" />
|
|
|
|
<_MessagingTransportPlugins Include="$(MessagingTransportPluginSourceDir)\StellaOps*.dll" />
|
|
<_MessagingTransportPlugins Include="$(MessagingTransportPluginSourceDir)\StackExchange.Redis.dll" Condition="Exists('$(MessagingTransportPluginSourceDir)\StackExchange.Redis.dll')" />
|
|
<_MessagingTransportPlugins Include="$(MessagingTransportPluginSourceDir)\Pipelines.Sockets.Unofficial.dll" Condition="Exists('$(MessagingTransportPluginSourceDir)\Pipelines.Sockets.Unofficial.dll')" />
|
|
<_MessagingTransportPlugins Include="$(MessagingTransportPluginSourceDir)\System.IO.Hashing.dll" Condition="Exists('$(MessagingTransportPluginSourceDir)\System.IO.Hashing.dll')" />
|
|
<_MessagingTransportPluginMetadata Include="$(MessagingTransportPluginSourceDir)\*.deps.json" />
|
|
</ItemGroup>
|
|
|
|
<MakeDir Directories="$(PublishDir)plugins/router/transports" />
|
|
<MakeDir Directories="$(PublishDir)plugins/messaging" />
|
|
|
|
<Copy
|
|
SourceFiles="@(_RouterTransportPlugins)"
|
|
DestinationFolder="$(PublishDir)plugins/router/transports"
|
|
SkipUnchangedFiles="true" />
|
|
<Copy
|
|
SourceFiles="@(_RouterTransportPluginMetadata)"
|
|
DestinationFolder="$(PublishDir)plugins/router/transports"
|
|
SkipUnchangedFiles="true" />
|
|
<Copy
|
|
SourceFiles="@(_MessagingTransportPlugins)"
|
|
DestinationFolder="$(PublishDir)plugins/messaging"
|
|
SkipUnchangedFiles="true" />
|
|
<Copy
|
|
SourceFiles="@(_MessagingTransportPluginMetadata)"
|
|
DestinationFolder="$(PublishDir)plugins/messaging"
|
|
SkipUnchangedFiles="true" />
|
|
</Target>
|
|
|
|
<!-- Enable Microsoft Testing Platform for all xUnit v3 projects (including those that set UseXunitV3 in their csproj).
|
|
This must be in targets (not props) because non-.Tests projects set UseXunitV3 in their project file,
|
|
which is evaluated after Directory.Build.props but before Directory.Build.targets. -->
|
|
<PropertyGroup Condition="'$(UseXunitV3)' == 'true' and '$(TestingPlatformDotnetTestSupport)' == ''">
|
|
<TestingPlatformDotnetTestSupport>true</TestingPlatformDotnetTestSupport>
|
|
</PropertyGroup>
|
|
</Project>
|