Add aspnet/Templating to the universe build

This commit is contained in:
Nate McMaster 2017-10-12 12:06:36 -07:00
parent 87b3cc6879
commit 446de15f0b
14 changed files with 106 additions and 20 deletions

4
.gitmodules vendored
View File

@ -166,3 +166,7 @@
path = modules/Testing
url = https://github.com/aspnet/Testing.git
branch = patch/2.0.1
[submodule "modules/Templating"]
path = modules/Templating
url = https://github.com/aspnet/Templating.git
branch = rel/2.0.3

View File

@ -1,12 +1,6 @@
<Project>
<Import Project="common.props" />
<PropertyGroup Condition=" '$(Version)' == '' ">
<VersionPrefix Condition=" '$(VersionPrefix)' == '' ">1.0.0</VersionPrefix>
<Version Condition=" '$(VersionSuffix)' != '' ">$(VersionPrefix)-$(VersionSuffix)</Version>
<Version Condition=" '$(Version)' == '' ">$(VersionPrefix)</Version>
</PropertyGroup>
<PropertyGroup>
<_DependencyBuildDirectory>$(RepositoryRoot).deps\build\</_DependencyBuildDirectory>
<_DependencyMirrorDirectory>$(RepositoryRoot).deps\mirror\</_DependencyMirrorDirectory>
@ -37,6 +31,7 @@
</ItemGroup>
<Copy SourceFiles="@(AllMetapackageFiles)" DestinationFolder="$(MetapackageWorkDirectory)\%(RecursiveDir)" />
<Copy SourceFiles="$(_SrcDirectory)Directory.Build.props" DestinationFolder="$(_WorkRoot)" />
<!-- Generate RS.Reference project -->
<RepoTasks.AddMetapackageReferences
@ -81,7 +76,7 @@
OutputPath="$(GeneratedRestoreSourcesPropsPath)" />
<PropertyGroup>
<_RsManifestProps>MicrosoftAspNetCoreAllPackageVersion=$(Version)</_RsManifestProps>
<_RsManifestProps>MicrosoftAspNetCoreAllPackageVersion=$(PackageVersion)</_RsManifestProps>
<_RsManifestProps>$(_RsManifestProps);DotNetRestoreSourcesPropsPath=$(GeneratedRestoreSourcesPropsPath)</_RsManifestProps>
</PropertyGroup>
</Target>
@ -144,8 +139,8 @@
<Target Name="PackRuntimeStore" DependsOnTargets="_ResolveRuntimeStoreRID">
<PropertyGroup>
<OutputZip>$(ArtifactsDir)aspnetcore-store-$(Version)-$(RuntimeStoreRID).zip</OutputZip>
<OutputSymbolZip>$(ArtifactsDir)aspnetcore-symbols-$(Version)-$(RuntimeStoreRID).zip</OutputSymbolZip>
<OutputZip>$(ArtifactsDir)aspnetcore-store-$(PackageVersion)-$(RuntimeStoreRID).zip</OutputZip>
<OutputSymbolZip>$(ArtifactsDir)aspnetcore-symbols-$(PackageVersion)-$(RuntimeStoreRID).zip</OutputSymbolZip>
</PropertyGroup>
<ItemGroup>
@ -162,7 +157,7 @@
NewManifests="@(RuntimeStoreManifestFiles)"
RuntimeStoreFiles="@(RuntimeStoreFiles)"
RuntimeStoreSymbolFiles="@(RuntimeStoreSymbolFiles)"
ManifestDestination="$(ArtifactsDir)aspnetcore-store-$(Version)-$(RuntimeStoreRID).xml"
ManifestDestination="$(ArtifactsDir)aspnetcore-store-$(PackageVersion)-$(RuntimeStoreRID).xml"
StoreDestination="$(_StoreZipDirectory)store\"
SymbolsDestination="$(_SymbolsZipDirectory)"/>
@ -181,7 +176,7 @@
<Target Name="CreateCommonManifest" DependsOnTargets="_PrepareRuntimeStoreBuildAssets">
<PropertyGroup>
<CommonManifestFileName>aspnetcore-store-$(Version)-common.xml</CommonManifestFileName>
<CommonManifestFileName>aspnetcore-store-$(PackageVersion)-common.xml</CommonManifestFileName>
</PropertyGroup>
<!-- Trim packages guaranteed to be in the runtime but isn't included in our runtime store -->
@ -210,7 +205,7 @@
<!-- Create a consolidated manifest and place in metapackage -->
<RepoTasks.ConsolidateManifests
Manifests="@(ManifestFiles)"
ManifestDestination="$(_WorkRoot)\build\aspnetcore-store-$(Version).xml"/>
ManifestDestination="$(_WorkRoot)\build\aspnetcore-store-$(PackageVersion).xml"/>
<ItemGroup>
<ArchiveFiles Include="$(_WorkRoot)**\*" />

69
build/Templating.targets Normal file
View File

@ -0,0 +1,69 @@
<Project>
<PropertyGroup>
<TemplatingProjectRoot>$(MSBuildThisFileDirectory)..\modules\Templating\</TemplatingProjectRoot>
</PropertyGroup>
<Target Name="BuildTemplates" DependsOnTargets="GeneratePropsFiles">
<PropertyGroup>
<GeneratedNoTimestampPackageVersionPropsPath>$(IntermediateDir)dependencies.notimestamp.props</GeneratedNoTimestampPackageVersionPropsPath>
<TemplateProjCommmonProperties>
RepositoryRoot=$(TemplatingProjectRoot);
DotNetRestoreSourcesPropsPath=$(GeneratedRestoreSourcesPropsPath);
BuildNumber=$(BuildNumber);
Configuration=$(Configuration);
</TemplateProjCommmonProperties>
<TemplateProjProperties>
$(TemplateProjCommmonProperties);
DotNetPackageVersionPropsPath=$(GeneratedPackageVersionPropsPath);
VersionMetadata=timestamped;
</TemplateProjProperties>
<TemplateProjNoTimestampProperties>
$(TemplateProjCommmonProperties);
DotNetPackageVersionPropsPath=$(GeneratedNoTimestampPackageVersionPropsPath);
BuildNumber=$(BuildNumber)-final;
VersionMetadata=notimestamp;
</TemplateProjNoTimestampProperties>
</PropertyGroup>
<!-- Produce regular, timestamped templates for pre-release builds -->
<MSBuild Projects="$(MSBuildProjectFullPath)"
Targets="Restore;Compile;Package"
Properties="$(TemplateProjProperties)" />
<ItemGroup>
<TemplateArtifacts Include="$(TemplatingProjectRoot)artifacts\build\*" />
</ItemGroup>
<Copy SourceFiles="@(TemplateArtifacts)" DestinationFolder="$(BuildDir)" />
<!-- Gather artifact info as if this were a final build -->
<MSBuild Projects="$(MSBuildProjectFullPath)"
Targets="GetArtifactInfo"
Properties="RepositoryRoot=%(Repository.RootPath);Configuration=$(Configuration);BuildNumber=$(BuildNumber);IsFinalBuild=true"
ContinueOnError="WarnAndContinue">
<Output TaskParameter="TargetOutputs" ItemName="FinalBuildArtifactInfo" />
</MSBuild>
<ItemGroup>
<_NoTimestampPackages Include="@(ExternalDependency)" />
<_NoTimestampPackages Include="%(FinalBuildArtifactInfo.PackageId)" Version="%(FinalBuildArtifactInfo.Version)" Condition=" '%(FinalBuildArtifactInfo.ArtifactType)' == 'NuGetPackage' " />
<_NoTimestampPackages Include="Microsoft.AspNetCore.All" Version="$(PackageVersionNoTimestamp)" />
</ItemGroup>
<RepoTasks.GeneratePackageVersionPropsFile
Packages="@(_NoTimestampPackages)"
OutputPath="$(GeneratedNoTimestampPackageVersionPropsPath)" />
<!-- Rebuild the templates without restoring. (The non-timestamped packages don't exist yet.) -->
<MSBuild Projects="$(MSBuildProjectFullPath)"
Targets="Prepare;Compile;Package"
Properties="$(TemplateProjNoTimestampProperties);NoRestore=true" />
<ItemGroup>
<TemplateNoTimestampArtifacts Include="$(TemplatingProjectRoot)artifacts\build\*" />
</ItemGroup>
<Copy SourceFiles="@(TemplateNoTimestampArtifacts)" DestinationFolder="$(ArtifactsDir)notimestamp\" />
</Target>
</Project>

View File

@ -113,6 +113,7 @@
<PackageArtifact Include="Microsoft.AspNetCore.Server.Kestrel" Category="ship" Metapackage="true" />
<PackageArtifact Include="Microsoft.AspNetCore.Session" Category="ship" Metapackage="true" />
<PackageArtifact Include="Microsoft.AspNetCore.SpaServices" Category="ship" Metapackage="true" />
<PackageArtifact Include="Microsoft.AspNetCore.SpaTemplates" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.StaticFiles" Category="ship" Metapackage="true" />
<PackageArtifact Include="Microsoft.AspNetCore.TestHost" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.WebSockets" Category="ship" Metapackage="true" />
@ -121,6 +122,10 @@
<PackageArtifact Include="Microsoft.CodeAnalysis.Razor.Workspaces" Category="shipoob" />
<PackageArtifact Include="Microsoft.CodeAnalysis.Razor" Category="ship" Metapackage="true" />
<PackageArtifact Include="Microsoft.CodeAnalysis.Remote.Razor" Category="shipoob" />
<PackageArtifact Include="Microsoft.DotNet.Web.Client.ItemTemplates" Category="shipoob" />
<PackageArtifact Include="Microsoft.DotNet.Web.ItemTemplates" Category="shipoob" />
<PackageArtifact Include="Microsoft.DotNet.Web.ProjectTemplates.2.0" Category="shipoob" />
<PackageArtifact Include="Microsoft.DotNet.Web.Spa.ProjectTemplates" Category="shipoob" />
<PackageArtifact Include="Microsoft.EntityFrameworkCore.Design" Category="ship" Metapackage="true" />
<PackageArtifact Include="Microsoft.EntityFrameworkCore.InMemory" Category="ship" Metapackage="true" />
<PackageArtifact Include="Microsoft.EntityFrameworkCore.Relational.Design.Specification.Tests" Category="ship" />

View File

@ -1,5 +1,4 @@
<Project>
<Import Project="..\version.props" />
<Import Project="dependencies.props" />
<PropertyGroup>

View File

@ -123,7 +123,7 @@
<!-- ASP.NET Core Tools feed -->
<PropertyGroup>
<AspNetCoreToolsFeed>https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json</AspNetCoreToolsFeed>
<InternalAspNetCoreSdkPackageVersion>2.0.2-beta-15522</InternalAspNetCoreSdkPackageVersion>
<InternalAspNetCoreSdkPackageVersion>2.0.2-rc1-15526</InternalAspNetCoreSdkPackageVersion>
</PropertyGroup>
<ItemGroup>
@ -270,7 +270,7 @@
<NoWarn>KRB2004</NoWarn>
</ExternalDependency>
<ExternalDependency Include="xunit.extensibility.core" Version="2.2.0" Source="$(DefaultNuGetFeed)" />
<ExternalDependency Include="xunit.runner.visualstudio" Version="2.3.0-beta2-build1317" Source="$(DefaultNuGetFeed)" Private="true">
<ExternalDependency Include="xunit.runner.visualstudio" Version="2.3.0" Source="$(DefaultNuGetFeed)" Private="true">
<VariableName>XunitRunnerVisualStudioPackageVersion</VariableName>
</ExternalDependency>
<ExternalDependency Include="xunit" Version="2.2.0" Source="$(DefaultNuGetFeed)">

View File

@ -2,6 +2,7 @@
<Import Project="RepositoryBuild.targets" />
<Import Project="RuntimeStore.targets" />
<Import Project="PackageArchive.targets" />
<Import Project="Templating.targets" />
<Import Project="push.targets" />
<PropertyGroup>
@ -22,7 +23,7 @@
<CleanDependsOn>$(CleanDependsOn);CleanArtifacts;CleanUniverseArtifacts</CleanDependsOn>
<RestoreDependsOn>$(RestoreDependsOn);RestoreExternalDependencies</RestoreDependsOn>
<CompileDependsOn>$(CompileDependsOn);BuildRepositories</CompileDependsOn>
<PackageDependsOn>$(PackageDependsOn);BuildAllMetapackage;SplitPackages</PackageDependsOn>
<PackageDependsOn>$(PackageDependsOn);BuildAllMetapackage;BuildTemplates;SplitPackages</PackageDependsOn>
<VerifyDependsOn>$(VerifyDependsOn);VerifyCoherentVersions</VerifyDependsOn>
</PropertyGroup>
@ -44,6 +45,7 @@
<ItemGroup>
<_LineupPackages Include="@(ExternalDependency)" />
<_LineupPackages Include="%(ArtifactInfo.PackageId)" Version="%(ArtifactInfo.Version)" Condition=" '%(ArtifactInfo.ArtifactType)' == 'NuGetPackage' " />
<_LineupPackages Include="Microsoft.AspNetCore.All" Version="$(PackageVersion)" />
<_LineupSources Include="$(_DependencyPackagesDirectory)" Condition="'$(_DependencyPackagesDirectory)' != '' AND Exists('$(_DependencyPackagesDirectory)')" />
<_LineupSources Include="$(BuildDir)" />

View File

@ -32,6 +32,8 @@ namespace RepoTasks
var root = new XElement("Project", props);
var doc = new XDocument(root);
props.Add(new XElement("MSBuildAllProjects", "$(MSBuildAllProjects);$(MSBuildThisFileFullPath)"));
var varNames = new HashSet<string>();
var versionElements = new List<XElement>();
foreach (var pkg in Packages)

View File

@ -26,7 +26,10 @@ namespace RepoTasks
Directory.CreateDirectory(Path.GetDirectoryName(OutputPath));
var sources = new XElement("DotNetRestoreSources");
var doc = new XDocument(new XElement("Project", new XElement("PropertyGroup", sources)));
var propertyGroup = new XElement("PropertyGroup", sources);
var doc = new XDocument(new XElement("Project", propertyGroup));
propertyGroup.Add(new XElement("MSBuildAllProjects", "$(MSBuildAllProjects);$(MSBuildThisFileFullPath)"));
var sb = new StringBuilder();

View File

@ -1,2 +1,2 @@
version:2.0.2-beta-15522
commithash:f26cb086ebd8b5a187381bb9a431794f11d69025
version:2.0.2-rc1-15526
commithash:436afc3dc08f5e278431db807866cc5f032f4d7b

1
modules/Templating Submodule

@ -0,0 +1 @@
Subproject commit a4ba5a1cb1c61d3a4bead34915baccf438a8d1b3

View File

@ -0,0 +1,4 @@
<Project>
<Import Project="..\version.props" />
<Import Project="..\build\common.props" />
</Project>

View File

@ -1,6 +1,5 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\build\common.props" />
<Import Project="$(DotNetRestoreSourcePropsPath)" Condition="'$(DotNetRestoreSourcePropsPath)' != ''"/>
<PropertyGroup>
@ -15,6 +14,7 @@
</RestoreSources>
<IncludeBuildOutput>false</IncludeBuildOutput>
<IncludeSymbols>false</IncludeSymbols>
<TargetFramework>netcoreapp2.0</TargetFramework>
<PackageTags>aspnetcore</PackageTags>
<Description>Microsoft.AspNetCore.All</Description>

View File

@ -3,7 +3,9 @@
<VersionPrefix>2.0.3</VersionPrefix>
<VersionSuffix>rtm</VersionSuffix>
<PackageVersion Condition="'$(IsFinalBuild)' == 'true' AND '$(VersionSuffix)' == 'rtm' ">$(VersionPrefix)</PackageVersion>
<PackageVersionNoTimestamp Condition="'$(VersionSuffix)' == 'rtm' ">$(VersionPrefix)</PackageVersionNoTimestamp>
<PackageVersion Condition="'$(IsFinalBuild)' == 'true' AND '$(VersionSuffix)' != 'rtm' ">$(VersionPrefix)-$(VersionSuffix)-final</PackageVersion>
<PackageVersionNoTimestamp Condition="'$(VersionSuffix)' != 'rtm' ">$(VersionPrefix)-$(VersionSuffix)-final</PackageVersionNoTimestamp>
<VersionSuffix Condition="'$(VersionSuffix)' != '' And '$(BuildNumber)' != ''">$(VersionSuffix)-$(BuildNumber)</VersionSuffix>
</PropertyGroup>
</Project>