Add support for building Microsoft.AspNetCore.Analyzers metapackage
This commit is contained in:
parent
d3a56f55e1
commit
13cf9f76bd
|
|
@ -4,9 +4,7 @@
|
|||
<_WorkRoot>$(RepositoryRoot).w\</_WorkRoot>
|
||||
<_WorkLayoutDir>$(_WorkRoot).l\</_WorkLayoutDir>
|
||||
<_WorkOutputDir>$(_WorkRoot).o\</_WorkOutputDir>
|
||||
<_SrcDir>$(RepositoryRoot)src\</_SrcDir>
|
||||
<_AllMetapackageDir>$(_SrcDir)Microsoft.AspNetCore.All\</_AllMetapackageDir>
|
||||
<_AppMetapackageDir>$(_SrcDir)Microsoft.AspNetCore.App\</_AppMetapackageDir>
|
||||
<_MetapackageSrcRoot>$(RepositoryRoot)src\</_MetapackageSrcRoot>
|
||||
<_TemplatesDir>$(MSBuildThisFileDirectory)tools\templates\</_TemplatesDir>
|
||||
<_DockerDir>$(MSBuildThisFileDirectory)tools\docker\</_DockerDir>
|
||||
<_PackagingDir>$(MSBuildThisFileDirectory)tools\packaging\</_PackagingDir>
|
||||
|
|
|
|||
|
|
@ -8,12 +8,17 @@
|
|||
|
||||
<Target Name="_BuildMetapackage" DependsOnTargets="ResolveRepoInfo">
|
||||
<PropertyGroup>
|
||||
<MetapackageSource>$(_MetapackageSrcRoot)$(MetapackageName)\</MetapackageSource>
|
||||
<MetapackageWorkDirectory>$(_WorkRoot)$(MetapackageName)\</MetapackageWorkDirectory>
|
||||
<CommonProps>Configuration=$(Configuration);DotNetRestoreSourcePropsPath=$(GeneratedRestoreSourcesPropsPath);AspNetUniverseBuildOffline=true</CommonProps>
|
||||
<CommonProps>$(CommonProps);RuntimeFrameworkVersion=$(MicrosoftNETCoreApp21PackageVersion)</CommonProps>
|
||||
<CommonProps>$(CommonProps);AppMetapackageVersion=$(PackageVersion)</CommonProps>
|
||||
</PropertyGroup>
|
||||
|
||||
<Error
|
||||
Message="Source directory $(MetapackageSource) for $(MetapackageName) does not exist."
|
||||
Condition="!Exists('$(MetapackageSource)')" />
|
||||
|
||||
<ItemGroup>
|
||||
<MetapackageFiles Include="$(MetapackageSource)**\*" />
|
||||
</ItemGroup>
|
||||
|
|
@ -22,8 +27,8 @@
|
|||
<RemoveDir Directories="$(MetapackageWorkDirectory)" />
|
||||
|
||||
<!-- Move to working dir -->
|
||||
<Copy SourceFiles="@(MetapackageFiles)" DestinationFolder="$(MetapackageWorkDirectory)\%(RecursiveDir)" />
|
||||
<Copy SourceFiles="$(_SrcDir)Directory.Build.props" DestinationFolder="$(_WorkRoot)" />
|
||||
<Copy SourceFiles="@(MetapackageFiles)" DestinationFolder="$(MetapackageWorkDirectory)%(RecursiveDir)" />
|
||||
<Copy SourceFiles="$(_MetapackageSrcRoot)Directory.Build.props" DestinationFolder="$(_WorkRoot)" />
|
||||
|
||||
<!-- Add references to project -->
|
||||
<RepoTasks.AddMetapackageReferences
|
||||
|
|
@ -39,18 +44,34 @@
|
|||
<MSBuild Projects="$(MetapackageWorkDirectory)$(MetapackageName).csproj" Targets="Pack" Properties="$(CommonProps);PackageOutputPath=$(BuildDir)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="BuildMetapackage">
|
||||
<PropertyGroup>
|
||||
<AppMetapackageProps>MetapackageName=Microsoft.AspNetCore.App</AppMetapackageProps>
|
||||
<AppMetapackageProps>$(AppMetapackageProps);MetapackageSource=$(_AppMetapackageDir)</AppMetapackageProps>
|
||||
<AppMetapackageProps>$(AppMetapackageProps);MetapackageReferenceType=AppMetapackage</AppMetapackageProps>
|
||||
<AllMetapackageProps>MetapackageName=Microsoft.AspNetCore.All</AllMetapackageProps>
|
||||
<AllMetapackageProps>$(AllMetapackageProps);MetapackageSource=$(_AllMetapackageDir)</AllMetapackageProps>
|
||||
<AllMetapackageProps>$(AllMetapackageProps);MetapackageReferenceType=AllMetapackage</AllMetapackageProps>
|
||||
</PropertyGroup>
|
||||
<Target Name="BuildMetapackages">
|
||||
<ItemGroup>
|
||||
<_MetapackageBuilderProject Include="$(MSBuildProjectFullPath)">
|
||||
<AdditionalProperties>
|
||||
MetapackageName=Microsoft.AspNetCore.App;
|
||||
MetapackageReferenceType=AppMetapackage
|
||||
</AdditionalProperties>
|
||||
</_MetapackageBuilderProject>
|
||||
|
||||
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="_BuildMetapackage" Properties="$(AppMetapackageProps)" />
|
||||
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="_BuildMetapackage" Properties="$(AllMetapackageProps)" />
|
||||
<_MetapackageBuilderProject Include="$(MSBuildProjectFullPath)">
|
||||
<AdditionalProperties>
|
||||
MetapackageName=Microsoft.AspNetCore.All;
|
||||
MetapackageReferenceType=AllMetapackage
|
||||
</AdditionalProperties>
|
||||
</_MetapackageBuilderProject>
|
||||
|
||||
<_MetapackageBuilderProject Include="$(MSBuildProjectFullPath)">
|
||||
<AdditionalProperties>
|
||||
MetapackageName=Microsoft.AspNetCore.Analyzers;
|
||||
MetapackageReferenceType=Analyzer
|
||||
</AdditionalProperties>
|
||||
</_MetapackageBuilderProject>
|
||||
</ItemGroup>
|
||||
|
||||
<MSBuild
|
||||
Projects="@(_MetapackageBuilderProject)"
|
||||
Targets="_BuildMetapackage"
|
||||
BuildInParallel="$(BuildInParallel)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="DefineSharedFxPrerequisites">
|
||||
|
|
@ -128,7 +149,7 @@
|
|||
<!-- Clear working directory -->
|
||||
<RemoveDir Directories="$(_WorkRoot)" />
|
||||
|
||||
<Copy SourceFiles="$(_SrcDir)Directory.Build.props" DestinationFolder="$(_WorkRoot)" />
|
||||
<Copy SourceFiles="$(_MetapackageSrcRoot)Directory.Build.props" DestinationFolder="$(_WorkRoot)" />
|
||||
|
||||
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="_PrepareForSharedFx" Properties="$(AppSharedFxProps)" />
|
||||
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="_PrepareForSharedFx" Properties="$(AllSharedFxProps)" />
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
<AppMetapackage>false</AppMetapackage>
|
||||
<AllMetapackage>false</AllMetapackage>
|
||||
<HostingStartup>false</HostingStartup>
|
||||
<Analyzer>false</Analyzer>
|
||||
<LZMA>false</LZMA>
|
||||
<LZMATools>false</LZMATools>
|
||||
</PackageArtifact>
|
||||
|
|
@ -19,6 +20,7 @@
|
|||
<PackageArtifact Include="Microsoft.AspNetCore" Category="ship" AppMetapackage="true"/>
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.App" Category="ship" />
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.All" Category="ship" LZMA="true" />
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Analyzers" Category="shipoob" />
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Antiforgery" Category="ship" AppMetapackage="true"/>
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.ApplicationInsights.HostingStartup" Category="ship" AllMetapackage="true" HostingStartup="true" />
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.AspNetCoreModule" Category="noship" />
|
||||
|
|
@ -91,7 +93,7 @@
|
|||
<PackageArtifact Include="Microsoft.AspNetCore.MiddlewareAnalysis" Category="ship" AppMetapackage="true"/>
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Mvc" Category="ship" AppMetapackage="true"/>
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Mvc.Abstractions" Category="ship" AppMetapackage="true"/>
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Mvc.Analyzers" Category="shipoob" />
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Mvc.Analyzers" Category="shipoob" Analyzer="true" />
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Mvc.ApiExplorer" Category="ship" AppMetapackage="true"/>
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Mvc.Core" Category="ship" AppMetapackage="true"/>
|
||||
<PackageArtifact Include="Microsoft.AspNetCore.Mvc.Cors" Category="ship" AppMetapackage="true"/>
|
||||
|
|
@ -226,7 +228,7 @@
|
|||
<PackageArtifact Include="Microsoft.Extensions.Localization.Abstractions" Category="ship" AppMetapackage="true" />
|
||||
<PackageArtifact Include="Microsoft.Extensions.Logging" Category="ship" AppMetapackage="true" />
|
||||
<PackageArtifact Include="Microsoft.Extensions.Logging.Abstractions" Category="ship" AppMetapackage="true" />
|
||||
<PackageArtifact Include="Microsoft.Extensions.Logging.Analyzers" Category="noship" />
|
||||
<PackageArtifact Include="Microsoft.Extensions.Logging.Analyzers" Category="noship" Analyzer="true" />
|
||||
<PackageArtifact Include="Microsoft.Extensions.Logging.AzureAppServices" Category="ship" AppMetapackage="true" />
|
||||
<PackageArtifact Include="Microsoft.Extensions.Logging.Configuration" Category="ship" AppMetapackage="true" />
|
||||
<PackageArtifact Include="Microsoft.Extensions.Logging.Console" Category="ship" AppMetapackage="true" />
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
<CleanDependsOn>$(CleanDependsOn);CleanArtifacts;CleanUniverseArtifacts</CleanDependsOn>
|
||||
<RestoreDependsOn>$(RestoreDependsOn);InstallDotNet;RestoreExternalDependencies</RestoreDependsOn>
|
||||
<CompileDependsOn>$(CompileDependsOn);BuildRepositories</CompileDependsOn>
|
||||
<PackageDependsOn Condition="'$(TestOnly)' != 'true'">$(PackageDependsOn);BuildMetapackage;BuildTemplates;SplitPackages</PackageDependsOn>
|
||||
<PackageDependsOn Condition="'$(TestOnly)' != 'true'">$(PackageDependsOn);BuildMetapackages;BuildTemplates;SplitPackages</PackageDependsOn>
|
||||
<TestDependsOn>$(TestDependsOn);_TestRepositories</TestDependsOn>
|
||||
<VerifyDependsOn Condition="'$(TestOnly)' != 'true'">$(VerifyDependsOn);VerifyCoherentVersions</VerifyDependsOn>
|
||||
<GetArtifactInfoDependsOn>$(GetArtifactInfoDependsOn);ResolveRepoInfo</GetArtifactInfoDependsOn>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<Import Project="$(DotNetRestoreSourcePropsPath)" Condition="'$(DotNetRestoreSourcePropsPath)' != ''" />
|
||||
|
||||
<PropertyGroup>
|
||||
<RestoreSources>$(DotNetRestoreSources)</RestoreSources>
|
||||
<RestoreSources Condition="'$(DotNetBuildOffline)' != 'true' AND '$(AspNetUniverseBuildOffline)' != 'true' ">
|
||||
$(RestoreSources);
|
||||
https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json;
|
||||
https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json;
|
||||
</RestoreSources>
|
||||
<RestoreSources Condition="'$(DotNetBuildOffline)' != 'true'">
|
||||
$(RestoreSources);
|
||||
https://api.nuget.org/v3/index.json;
|
||||
</RestoreSources>
|
||||
|
||||
<IncludeBuildOutput>false</IncludeBuildOutput>
|
||||
<IncludeSymbols>false</IncludeSymbols>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<PackageTags>aspnetcore</PackageTags>
|
||||
<Description>Microsoft.AspNetCore.Analyzers</Description>
|
||||
<EnableApiCheck>false</EnableApiCheck>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
||||
Loading…
Reference in New Issue