Refactor template packaging logic to reduce duplication
This commit is contained in:
parent
bc317938ab
commit
e505707598
9 changed files with 216 additions and 280 deletions
|
@ -1,6 +1,8 @@
|
||||||
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
||||||
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Linq;
|
||||||
using Microsoft.Build.Framework;
|
using Microsoft.Build.Framework;
|
||||||
using Microsoft.Build.Utilities;
|
using Microsoft.Build.Utilities;
|
||||||
using NuGet.Versioning;
|
using NuGet.Versioning;
|
||||||
|
@ -9,26 +11,81 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
{
|
{
|
||||||
public class CalculateTemplateVersions : Task
|
public class CalculateTemplateVersions : Task
|
||||||
{
|
{
|
||||||
|
// Group BundledTemplates by TemplateFrameworkVersion
|
||||||
|
// In each group, get the version of the template with UseVersionForTemplateInstallPath=true
|
||||||
|
// From that version number, get the BundledTemplateInstallPath, BundledTemplateMajorMinorVersion, and BundledTemplateMajorMinorPatchVersion
|
||||||
[Required]
|
[Required]
|
||||||
public string AspNetCorePackageVersionTemplate { get; set; }
|
public ITaskItem [] BundledTemplates { get; set; }
|
||||||
|
|
||||||
|
[Required]
|
||||||
|
public string FullNugetVersion { get; set; }
|
||||||
|
|
||||||
|
[Required]
|
||||||
|
public string ProductMonikerRid { get; set; }
|
||||||
|
|
||||||
|
[Required]
|
||||||
|
public string InstallerExtension { get; set; }
|
||||||
|
|
||||||
|
[Required]
|
||||||
|
public int CombinedBuildNumberAndRevision { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
// Should be the BundledTemplates with BundledTemplateInstallPath metadata set to the value calculated for that group
|
||||||
|
[Output]
|
||||||
|
public ITaskItem [] BundledTemplatesWithInstallPaths { get; set; }
|
||||||
|
|
||||||
|
// For each group of templates (grouped by TemplateFrameworkVersion), this should be the following
|
||||||
|
// ItemSpec: NetCore60Templates
|
||||||
|
// TemplateBaseFilename: dotnet-60templates
|
||||||
|
// TemplatesMajorMinorVersion: 6.0 (from BundledTemplateMajorMinorVersion from group)
|
||||||
|
// InstallerUpgradeCode: Guid generated using GenerateGuidFromName, combining TemplateBaseFilename, FullNugetVersion, ProductMonikerRid, and InstallerExtension
|
||||||
|
// MSIVersion: Result of calling GenerateMsiVersionFromFullVersion logic with CombinedBuildNumberAndRevision and BundledTemplateMajorMinorPatchVersion from template group
|
||||||
|
|
||||||
[Output]
|
[Output]
|
||||||
public string BundledTemplateInstallPath { get; set; }
|
public ITaskItem [] TemplatesComponents { get; set; }
|
||||||
|
|
||||||
[Output]
|
|
||||||
public string BundledTemplateMajorMinorVersion { get; set; }
|
|
||||||
|
|
||||||
[Output]
|
|
||||||
public string BundledTemplateMajorMinorPatchVersion { get; set; }
|
|
||||||
|
|
||||||
private const int _patchVersionResetOffset = 1;
|
private const int _patchVersionResetOffset = 1;
|
||||||
|
|
||||||
public override bool Execute()
|
public override bool Execute()
|
||||||
{
|
{
|
||||||
var result = Calculate(AspNetCorePackageVersionTemplate);
|
var groups = BundledTemplates.GroupBy(bt => bt.GetMetadata("TemplateFrameworkVersion"))
|
||||||
BundledTemplateInstallPath = result.BundledTemplateInstallPath;
|
.ToDictionary(g => g.Key, g =>
|
||||||
BundledTemplateMajorMinorVersion = result.BundledTemplateMajorMinorVersion;
|
{
|
||||||
BundledTemplateMajorMinorPatchVersion = result.BundledTemplateMajorMinorPatchVersion;
|
var itemWithVersion = g.SingleOrDefault(i => i.GetMetadata("UseVersionForTemplateInstallPath").Equals("true", StringComparison.OrdinalIgnoreCase));
|
||||||
|
if (itemWithVersion == null)
|
||||||
|
{
|
||||||
|
throw new InvalidOperationException("Could not find single item with UseVersionForTemplateInstallPath for templates with TemplateFrameworkVersion: " + g.Key);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Calculate(itemWithVersion.GetMetadata("PackageVersion"));
|
||||||
|
});
|
||||||
|
|
||||||
|
BundledTemplatesWithInstallPaths = BundledTemplates.Select(t =>
|
||||||
|
{
|
||||||
|
var templateWithInstallPath = new TaskItem(t);
|
||||||
|
templateWithInstallPath.SetMetadata("BundledTemplateInstallPath", groups[t.GetMetadata("TemplateFrameworkVersion")].BundledTemplateInstallPath);
|
||||||
|
return templateWithInstallPath;
|
||||||
|
}).ToArray();
|
||||||
|
|
||||||
|
TemplatesComponents = groups.Select(g =>
|
||||||
|
{
|
||||||
|
string majorMinorWithoutDots = g.Value.BundledTemplateMajorMinorVersion.Replace(".", "");
|
||||||
|
var componentItem = new TaskItem($"NetCore{majorMinorWithoutDots}Templates");
|
||||||
|
var templateBaseFilename = $"dotnet-{majorMinorWithoutDots}templates";
|
||||||
|
componentItem.SetMetadata("TemplateBaseFilename", templateBaseFilename);
|
||||||
|
componentItem.SetMetadata("TemplatesMajorMinorVersion", g.Value.BundledTemplateMajorMinorVersion);
|
||||||
|
var installerUpgradeCode = GenerateGuidFromName.GenerateGuid(string.Join("-", templateBaseFilename, FullNugetVersion, ProductMonikerRid) + InstallerExtension).ToString().ToUpper();
|
||||||
|
componentItem.SetMetadata("InstallerUpgradeCode", installerUpgradeCode);
|
||||||
|
componentItem.SetMetadata("MSIVersion", GenerateMsiVersionFromFullVersion.GenerateMsiVersion(CombinedBuildNumberAndRevision, g.Value.BundledTemplateMajorMinorPatchVersion));
|
||||||
|
|
||||||
|
var brandName = System.Version.Parse(g.Key).Major >= 5 ?
|
||||||
|
$"Microsoft .NET {g.Key} Templates" :
|
||||||
|
$"Microsoft .NET Core {g.Key} Templates";
|
||||||
|
|
||||||
|
componentItem.SetMetadata("BrandNameWithoutVersion", brandName);
|
||||||
|
|
||||||
|
return componentItem;
|
||||||
|
}).ToArray();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
35
src/core-sdk-tasks/CollatePackageDownloads.cs
Normal file
35
src/core-sdk-tasks/CollatePackageDownloads.cs
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using Microsoft.Build.Framework;
|
||||||
|
using Microsoft.Build.Utilities;
|
||||||
|
|
||||||
|
namespace Microsoft.DotNet.Cli.Build
|
||||||
|
{
|
||||||
|
// Multiple PackageDownload items for the same package are not supported. Rather, to download multiple versions of the same
|
||||||
|
// package, the PackageDownload items can have a semicolon-separated list of versions (each in brackets) as the Version metadata.
|
||||||
|
// So this task groups a list of items with PackageVersion metadata into a list of items which can be used as PackageDownloads
|
||||||
|
public class CollatePackageDownloads : Task
|
||||||
|
{
|
||||||
|
[Required]
|
||||||
|
public ITaskItem[] Packages { get; set; }
|
||||||
|
|
||||||
|
[Output]
|
||||||
|
public ITaskItem [] PackageDownloads { get; set; }
|
||||||
|
|
||||||
|
public override bool Execute()
|
||||||
|
{
|
||||||
|
PackageDownloads = Packages.GroupBy(p => p.ItemSpec)
|
||||||
|
.Select(g =>
|
||||||
|
{
|
||||||
|
var packageDownloadItem = new TaskItem(g.Key);
|
||||||
|
packageDownloadItem.SetMetadata("Version", string.Join(";",
|
||||||
|
g.Select(p => "[" + p.GetMetadata("PackageVersion") + "]")));
|
||||||
|
return packageDownloadItem;
|
||||||
|
}).ToArray();
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -20,19 +20,24 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
|
|
||||||
public override bool Execute()
|
public override bool Execute()
|
||||||
{
|
{
|
||||||
var parsedVersion = NuGetVersion.Parse(VersionMajorMinorPatch);
|
MsiVersion = GenerateMsiVersion(VersionRevision, VersionMajorMinorPatch);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string GenerateMsiVersion(int versionRevision, string versionMajorMinorPatch)
|
||||||
|
{
|
||||||
|
var parsedVersion = NuGetVersion.Parse(versionMajorMinorPatch);
|
||||||
|
|
||||||
var buildVersion = new Version()
|
var buildVersion = new Version()
|
||||||
{
|
{
|
||||||
Major = parsedVersion.Major,
|
Major = parsedVersion.Major,
|
||||||
Minor = parsedVersion.Minor,
|
Minor = parsedVersion.Minor,
|
||||||
Patch = parsedVersion.Patch,
|
Patch = parsedVersion.Patch,
|
||||||
VersionRevision = VersionRevision
|
VersionRevision = versionRevision
|
||||||
};
|
};
|
||||||
|
|
||||||
MsiVersion = buildVersion.GenerateMsiVersion();
|
return buildVersion.GenerateMsiVersion();
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,10 +13,6 @@
|
||||||
<HostFxrBrandName>Microsoft .NET Host FX Resolver $(HostFxrVersion)</HostFxrBrandName>
|
<HostFxrBrandName>Microsoft .NET Host FX Resolver $(HostFxrVersion)</HostFxrBrandName>
|
||||||
<SharedFrameworkName>Microsoft.NETCore.App</SharedFrameworkName>
|
<SharedFrameworkName>Microsoft.NETCore.App</SharedFrameworkName>
|
||||||
<SharedFrameworkNugetName>$(SharedFrameworkName)</SharedFrameworkNugetName>
|
<SharedFrameworkNugetName>$(SharedFrameworkName)</SharedFrameworkNugetName>
|
||||||
<BundledTemplates50BrandName>Microsoft .NET Core 5.0 Templates $(Version)</BundledTemplates50BrandName>
|
|
||||||
<BundledTemplates31BrandName>Microsoft .NET Core 3.1 Templates $(Version)</BundledTemplates31BrandName>
|
|
||||||
<BundledTemplates30BrandName>Microsoft .NET Core 3.0 Templates $(Version)</BundledTemplates30BrandName>
|
|
||||||
<BundledTemplates21BrandName>Microsoft .NET Core 2.1 Templates $(Version)</BundledTemplates21BrandName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
|
|
|
@ -39,5 +39,6 @@
|
||||||
<UsingTask TaskName="GetRuntimePackRids" AssemblyFile="$(CoreSdkTaskDll)"/>
|
<UsingTask TaskName="GetRuntimePackRids" AssemblyFile="$(CoreSdkTaskDll)"/>
|
||||||
<UsingTask TaskName="GenerateMSBuildExtensionsSWR" AssemblyFile="$(CoreSdkTaskDll)"/>
|
<UsingTask TaskName="GenerateMSBuildExtensionsSWR" AssemblyFile="$(CoreSdkTaskDll)"/>
|
||||||
<UsingTask TaskName="GetLinuxNativeInstallerDependencyVersions" AssemblyFile="$(CoreSdkTaskDll)"/>
|
<UsingTask TaskName="GetLinuxNativeInstallerDependencyVersions" AssemblyFile="$(CoreSdkTaskDll)"/>
|
||||||
|
<UsingTask TaskName="CollatePackageDownloads" AssemblyFile="$(CoreSdkTaskDll)"/>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
@ -1,55 +1,23 @@
|
||||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<Target Name="CalculateTemplatesVersions" DependsOnTargets="SetupWixProperties">
|
<Target Name="CalculateTemplatesVersions" DependsOnTargets="SetupWixProperties">
|
||||||
|
|
||||||
<CalculateTemplateVersions AspNetCorePackageVersionTemplate="$(AspNetCorePackageVersionFor60Templates)">
|
<CalculateTemplateVersions
|
||||||
<Output TaskParameter="BundledTemplateInstallPath" PropertyName="BundledTemplates60InstallPath" />
|
BundledTemplates="@(BundledTemplates)"
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorVersion" PropertyName="BundledTemplates60MajorMinorVersion" />
|
FullNugetVersion="$(FullNugetVersion)"
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorPatchVersion" PropertyName="BundledTemplates60MajorMinorPatchVersion" />
|
ProductMonikerRid="$(ProductMonikerRid)"
|
||||||
|
InstallerExtension="$(InstallerExtension)"
|
||||||
|
CombinedBuildNumberAndRevision="$(CombinedBuildNumberAndRevision)"
|
||||||
|
>
|
||||||
|
<Output TaskParameter="BundledTemplatesWithInstallPaths" ItemName="BundledTemplatesWithInstallPaths" />
|
||||||
|
<Output TaskParameter="TemplatesComponents" ItemName="TemplatesComponents" />
|
||||||
</CalculateTemplateVersions>
|
</CalculateTemplateVersions>
|
||||||
|
|
||||||
<CalculateTemplateVersions AspNetCorePackageVersionTemplate="$(AspNetCorePackageVersionFor50Templates)">
|
<ItemGroup>
|
||||||
<Output TaskParameter="BundledTemplateInstallPath" PropertyName="BundledTemplates50InstallPath" />
|
<TemplatesComponents>
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorVersion" PropertyName="BundledTemplates50MajorMinorVersion" />
|
<MSIInstallerFile>$(ArtifactsNonShippingPackagesDir)%(TemplatesComponents.TemplateBaseFilename)-$(FullNugetVersion)-$(ProductMonikerRid)$(InstallerExtension)</MSIInstallerFile>
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorPatchVersion" PropertyName="BundledTemplates50MajorMinorPatchVersion" />
|
</TemplatesComponents>
|
||||||
</CalculateTemplateVersions>
|
</ItemGroup>
|
||||||
|
|
||||||
<CalculateTemplateVersions AspNetCorePackageVersionTemplate="$(AspNetCorePackageVersionFor31Templates)">
|
|
||||||
<Output TaskParameter="BundledTemplateInstallPath" PropertyName="BundledTemplates31InstallPath" />
|
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorVersion" PropertyName="BundledTemplates31MajorMinorVersion" />
|
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorPatchVersion" PropertyName="BundledTemplates31MajorMinorPatchVersion" />
|
|
||||||
</CalculateTemplateVersions>
|
|
||||||
|
|
||||||
<CalculateTemplateVersions AspNetCorePackageVersionTemplate="$(AspNetCorePackageVersionFor30Templates)">
|
|
||||||
<Output TaskParameter="BundledTemplateInstallPath" PropertyName="BundledTemplates30InstallPath" />
|
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorVersion" PropertyName="BundledTemplates30MajorMinorVersion" />
|
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorPatchVersion" PropertyName="BundledTemplates30MajorMinorPatchVersion" />
|
|
||||||
</CalculateTemplateVersions>
|
|
||||||
|
|
||||||
<CalculateTemplateVersions AspNetCorePackageVersionTemplate="$(AspNetCorePackageVersionFor21Templates)">
|
|
||||||
<Output TaskParameter="BundledTemplateInstallPath" PropertyName="BundledTemplates21InstallPath" />
|
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorVersion" PropertyName="BundledTemplates21MajorMinorVersion" />
|
|
||||||
<Output TaskParameter="BundledTemplateMajorMinorPatchVersion" PropertyName="BundledTemplates21MajorMinorPatchVersion" />
|
|
||||||
</CalculateTemplateVersions>
|
|
||||||
|
|
||||||
<GenerateMsiVersionFromFullVersion VersionRevision="$(CombinedBuildNumberAndRevision)"
|
|
||||||
VersionMajorMinorPatch="$(BundledTemplates50MajorMinorPatchVersion)">
|
|
||||||
<Output TaskParameter="MsiVersion" PropertyName="BundledTemplates50MSIVersion" />
|
|
||||||
</GenerateMsiVersionFromFullVersion>
|
|
||||||
|
|
||||||
<GenerateMsiVersionFromFullVersion VersionRevision="$(CombinedBuildNumberAndRevision)"
|
|
||||||
VersionMajorMinorPatch="$(BundledTemplates31MajorMinorPatchVersion)">
|
|
||||||
<Output TaskParameter="MsiVersion" PropertyName="BundledTemplates31MSIVersion" />
|
|
||||||
</GenerateMsiVersionFromFullVersion>
|
|
||||||
|
|
||||||
<GenerateMsiVersionFromFullVersion VersionRevision="$(CombinedBuildNumberAndRevision)"
|
|
||||||
VersionMajorMinorPatch="$(BundledTemplates30MajorMinorPatchVersion)">
|
|
||||||
<Output TaskParameter="MsiVersion" PropertyName="BundledTemplates30MSIVersion" />
|
|
||||||
</GenerateMsiVersionFromFullVersion>
|
|
||||||
|
|
||||||
<GenerateMsiVersionFromFullVersion VersionRevision="$(CombinedBuildNumberAndRevision)"
|
|
||||||
VersionMajorMinorPatch="$(BundledTemplates21MajorMinorPatchVersion)">
|
|
||||||
<Output TaskParameter="MsiVersion" PropertyName="BundledTemplates21MSIVersion" />
|
|
||||||
</GenerateMsiVersionFromFullVersion>
|
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@ -67,12 +35,12 @@
|
||||||
<Bundled60Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor60Templates)"
|
<Bundled60Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor60Templates)"
|
||||||
Condition="'$(AspNetCorePackageVersionFor60Templates)' != '$(AspNetCorePackageVersionFor50Templates)'" />
|
Condition="'$(AspNetCorePackageVersionFor60Templates)' != '$(AspNetCorePackageVersionFor50Templates)'" />
|
||||||
<Bundled60Templates Include="Microsoft.DotNet.Web.ProjectTemplates.6.0" PackageVersion="$(AspNetCorePackageVersionFor60Templates)"
|
<Bundled60Templates Include="Microsoft.DotNet.Web.ProjectTemplates.6.0" PackageVersion="$(AspNetCorePackageVersionFor60Templates)"
|
||||||
|
UseVersionForTemplateInstallPath="true"
|
||||||
Condition="'$(AspNetCorePackageVersionFor60Templates)' != '$(AspNetCorePackageVersionFor50Templates)'"/>
|
Condition="'$(AspNetCorePackageVersionFor60Templates)' != '$(AspNetCorePackageVersionFor50Templates)'"/>
|
||||||
<Bundled60Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.6.0" PackageVersion="$(AspNetCorePackageVersionFor60Templates)"
|
<Bundled60Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.6.0" PackageVersion="$(AspNetCorePackageVersionFor60Templates)"
|
||||||
Condition="'$(AspNetCorePackageVersionFor60Templates)' != '$(AspNetCorePackageVersionFor50Templates)'" />
|
Condition="'$(AspNetCorePackageVersionFor60Templates)' != '$(AspNetCorePackageVersionFor50Templates)'" />
|
||||||
<Bundled60Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates60PackageVersion)"
|
<Bundled60Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates60PackageVersion)"
|
||||||
Condition="'$(NUnit3Templates60PackageVersion)' != '$(NUnit3Templates50PackageVersion)'" />
|
Condition="'$(NUnit3Templates60PackageVersion)' != '$(NUnit3Templates50PackageVersion)'" />
|
||||||
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@ -82,178 +50,119 @@
|
||||||
<Bundled50Templates Include="Microsoft.Dotnet.Wpf.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWpfProjectTemplates50PackageVersion)" />
|
<Bundled50Templates Include="Microsoft.Dotnet.Wpf.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWpfProjectTemplates50PackageVersion)" />
|
||||||
<Bundled50Templates Include="Microsoft.Dotnet.WinForms.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWinFormsProjectTemplates50PackageVersion)" />
|
<Bundled50Templates Include="Microsoft.Dotnet.WinForms.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWinFormsProjectTemplates50PackageVersion)" />
|
||||||
<Bundled50Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor50Templates)" />
|
<Bundled50Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor50Templates)" />
|
||||||
<Bundled50Templates Include="Microsoft.DotNet.Web.ProjectTemplates.5.0" PackageVersion="$(AspNetCorePackageVersionFor50Templates)" />
|
<Bundled50Templates Include="Microsoft.DotNet.Web.ProjectTemplates.5.0" PackageVersion="$(AspNetCorePackageVersionFor50Templates)" UseVersionForTemplateInstallPath="true" />
|
||||||
<Bundled50Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.5.0" PackageVersion="$(AspNetCorePackageVersionFor50Templates)" />
|
<Bundled50Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.5.0" PackageVersion="$(AspNetCorePackageVersionFor50Templates)" />
|
||||||
<Bundled50Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates50PackageVersion)" />
|
<Bundled50Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates50PackageVersion)" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup Condition="!$(Architecture.StartsWith('arm'))">
|
||||||
<Bundled31Templates Include="Microsoft.DotNet.Common.ItemTemplates" PackageVersion="$(MicrosoftDotNetCommonItemTemplates31PackageVersion)" />
|
<Bundled31Templates Include="Microsoft.DotNet.Common.ItemTemplates" PackageVersion="$(MicrosoftDotNetCommonItemTemplates31PackageVersion)" />
|
||||||
<Bundled31Templates Include="Microsoft.DotNet.Common.ProjectTemplates.3.1" PackageVersion="$(MicrosoftDotNetCommonProjectTemplates31PackageVersion)" />
|
<Bundled31Templates Include="Microsoft.DotNet.Common.ProjectTemplates.3.1" PackageVersion="$(MicrosoftDotNetCommonProjectTemplates31PackageVersion)" />
|
||||||
<Bundled31Templates Include="Microsoft.DotNet.Test.ProjectTemplates.3.1" PackageVersion="$(MicrosoftDotNetTestProjectTemplates31PackageVersion)" />
|
<Bundled31Templates Include="Microsoft.DotNet.Test.ProjectTemplates.3.1" PackageVersion="$(MicrosoftDotNetTestProjectTemplates31PackageVersion)" />
|
||||||
<Bundled31Templates Include="Microsoft.Dotnet.Wpf.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWpfProjectTemplates31PackageVersion)" />
|
<Bundled31Templates Include="Microsoft.Dotnet.Wpf.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWpfProjectTemplates31PackageVersion)" />
|
||||||
<Bundled31Templates Include="Microsoft.Dotnet.WinForms.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWinFormsProjectTemplates31PackageVersion)" />
|
<Bundled31Templates Include="Microsoft.Dotnet.WinForms.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWinFormsProjectTemplates31PackageVersion)" />
|
||||||
<Bundled31Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor31Templates)" />
|
<Bundled31Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor31Templates)" />
|
||||||
<Bundled31Templates Include="Microsoft.DotNet.Web.ProjectTemplates.3.1" PackageVersion="$(AspNetCorePackageVersionFor31Templates)" />
|
<Bundled31Templates Include="Microsoft.DotNet.Web.ProjectTemplates.3.1" PackageVersion="$(AspNetCorePackageVersionFor31Templates)" UseVersionForTemplateInstallPath="true" />
|
||||||
<Bundled31Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.3.1" PackageVersion="$(AspNetCorePackageVersionFor31Templates)" />
|
<Bundled31Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.3.1" PackageVersion="$(AspNetCorePackageVersionFor31Templates)" />
|
||||||
<Bundled31Templates Include="Microsoft.AspNetCore.Components.WebAssembly.Templates" PackageVersion="$(MicrosoftAspNetCoreComponentsWebAssemblyTemplatesPackageVersion)" />
|
<Bundled31Templates Include="Microsoft.AspNetCore.Components.WebAssembly.Templates" PackageVersion="$(MicrosoftAspNetCoreComponentsWebAssemblyTemplatesPackageVersion)" />
|
||||||
<Bundled31Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates31PackageVersion)" />
|
<Bundled31Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates31PackageVersion)" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup Condition="!$(Architecture.StartsWith('arm'))">
|
||||||
<Bundled30Templates Include="Microsoft.DotNet.Common.ItemTemplates" PackageVersion="$(MicrosoftDotNetCommonItemTemplates30PackageVersion)" />
|
<Bundled30Templates Include="Microsoft.DotNet.Common.ItemTemplates" PackageVersion="$(MicrosoftDotNetCommonItemTemplates30PackageVersion)" />
|
||||||
<Bundled30Templates Include="Microsoft.DotNet.Common.ProjectTemplates.3.0" PackageVersion="$(MicrosoftDotNetCommonProjectTemplates30PackageVersion)" />
|
<Bundled30Templates Include="Microsoft.DotNet.Common.ProjectTemplates.3.0" PackageVersion="$(MicrosoftDotNetCommonProjectTemplates30PackageVersion)" />
|
||||||
<Bundled30Templates Include="Microsoft.DotNet.Test.ProjectTemplates.3.0" PackageVersion="$(MicrosoftDotNetTestProjectTemplates30PackageVersion)" />
|
<Bundled30Templates Include="Microsoft.DotNet.Test.ProjectTemplates.3.0" PackageVersion="$(MicrosoftDotNetTestProjectTemplates30PackageVersion)" />
|
||||||
<Bundled30Templates Include="Microsoft.Dotnet.Wpf.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWpfProjectTemplates30PackageVersion)" />
|
<Bundled30Templates Include="Microsoft.Dotnet.Wpf.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWpfProjectTemplates30PackageVersion)" />
|
||||||
<Bundled30Templates Include="Microsoft.Dotnet.WinForms.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWinFormsProjectTemplates30PackageVersion)" />
|
<Bundled30Templates Include="Microsoft.Dotnet.WinForms.ProjectTemplates" PackageVersion="$(MicrosoftDotnetWinFormsProjectTemplates30PackageVersion)" />
|
||||||
<Bundled30Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor30Templates)" />
|
<Bundled30Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor30Templates)" />
|
||||||
<Bundled30Templates Include="Microsoft.DotNet.Web.ProjectTemplates.3.0" PackageVersion="$(AspNetCorePackageVersionFor30Templates)" />
|
<Bundled30Templates Include="Microsoft.DotNet.Web.ProjectTemplates.3.0" PackageVersion="$(AspNetCorePackageVersionFor30Templates)" UseVersionForTemplateInstallPath="true" />
|
||||||
<Bundled30Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.3.0" PackageVersion="$(AspNetCorePackageVersionFor30Templates)" />
|
<Bundled30Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.3.0" PackageVersion="$(AspNetCorePackageVersionFor30Templates)" />
|
||||||
<Bundled30Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates30PackageVersion)" />
|
<Bundled30Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates30PackageVersion)" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup Condition="!$(Architecture.StartsWith('arm'))">
|
||||||
<Bundled21Templates Include="Microsoft.DotNet.Common.ItemTemplates" PackageVersion="$(MicrosoftDotNetCommonItemTemplates21PackageVersion)" />
|
<Bundled21Templates Include="Microsoft.DotNet.Common.ItemTemplates" PackageVersion="$(MicrosoftDotNetCommonItemTemplates21PackageVersion)" />
|
||||||
<Bundled21Templates Include="Microsoft.DotNet.Common.ProjectTemplates.2.1" PackageVersion="$(MicrosoftDotNetCommonProjectTemplates21PackageVersion)" />
|
<Bundled21Templates Include="Microsoft.DotNet.Common.ProjectTemplates.2.1" PackageVersion="$(MicrosoftDotNetCommonProjectTemplates21PackageVersion)" />
|
||||||
<Bundled21Templates Include="Microsoft.DotNet.Test.ProjectTemplates.2.1" PackageVersion="$(MicrosoftDotNetTestProjectTemplates21PackageVersion)" />
|
<Bundled21Templates Include="Microsoft.DotNet.Test.ProjectTemplates.2.1" PackageVersion="$(MicrosoftDotNetTestProjectTemplates21PackageVersion)" />
|
||||||
<Bundled21Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor21Templates)" />
|
<Bundled21Templates Include="Microsoft.DotNet.Web.ItemTemplates" PackageVersion="$(AspNetCorePackageVersionFor21Templates)" />
|
||||||
<Bundled21Templates Include="Microsoft.DotNet.Web.ProjectTemplates.2.1" PackageVersion="$(AspNetCorePackageVersionFor21Templates)" />
|
<Bundled21Templates Include="Microsoft.DotNet.Web.ProjectTemplates.2.1" PackageVersion="$(AspNetCorePackageVersionFor21Templates)" UseVersionForTemplateInstallPath="true" />
|
||||||
<Bundled21Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.2.1" PackageVersion="$(AspNetCorePackageVersionFor21Templates)" />
|
<Bundled21Templates Include="Microsoft.DotNet.Web.Spa.ProjectTemplates.2.1" PackageVersion="$(AspNetCorePackageVersionFor21Templates)" />
|
||||||
<Bundled21Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates21PackageVersion)" />
|
<Bundled21Templates Include="NUnit3.DotNetNew.Template" PackageVersion="$(NUnit3Templates21PackageVersion)" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Bundled60Templates Update="@(Bundled60Templates)">
|
<BundledTemplates Include="@(Bundled60Templates)" TemplateFrameworkVersion="6.0"/>
|
||||||
<NupkgPathRelativeToPackageRoot>%(Identity)/%(PackageVersion)/%(Identity).%(PackageVersion).nupkg</NupkgPathRelativeToPackageRoot>
|
<BundledTemplates Include="@(Bundled50Templates)" TemplateFrameworkVersion="5.0"/>
|
||||||
<RestoredNupkgPath>$(NuGetPackageRoot)$([MSBuild]::ValueOrDefault('%(NupkgPathRelativeToPackageRoot)', '').ToLower())</RestoredNupkgPath>
|
<BundledTemplates Include="@(Bundled31Templates)" TemplateFrameworkVersion="3.1"/>
|
||||||
<Version>[%(PackageVersion)]</Version>
|
<BundledTemplates Include="@(Bundled30Templates)" TemplateFrameworkVersion="3.0"/>
|
||||||
</Bundled60Templates>
|
<BundledTemplates Include="@(Bundled21Templates)" TemplateFrameworkVersion="2.1"/>
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Bundled50Templates Update="@(Bundled50Templates)">
|
|
||||||
<NupkgPathRelativeToPackageRoot>%(Identity)/%(PackageVersion)/%(Identity).%(PackageVersion).nupkg</NupkgPathRelativeToPackageRoot>
|
|
||||||
<RestoredNupkgPath>$(NuGetPackageRoot)$([MSBuild]::ValueOrDefault('%(NupkgPathRelativeToPackageRoot)', '').ToLower())</RestoredNupkgPath>
|
|
||||||
<Version>[%(PackageVersion)]</Version>
|
|
||||||
</Bundled50Templates>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Bundled31Templates Update="@(Bundled31Templates)">
|
|
||||||
<NupkgPathRelativeToPackageRoot>%(Identity)/%(PackageVersion)/%(Identity).%(PackageVersion).nupkg</NupkgPathRelativeToPackageRoot>
|
|
||||||
<RestoredNupkgPath>$(NuGetPackageRoot)$([MSBuild]::ValueOrDefault('%(NupkgPathRelativeToPackageRoot)', '').ToLower())</RestoredNupkgPath>
|
|
||||||
<Version>[%(PackageVersion)]</Version>
|
|
||||||
</Bundled31Templates>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Bundled30Templates Update="@(Bundled30Templates)">
|
|
||||||
<NupkgPathRelativeToPackageRoot>%(Identity)/%(PackageVersion)/%(Identity).%(PackageVersion).nupkg</NupkgPathRelativeToPackageRoot>
|
|
||||||
<RestoredNupkgPath>$(NuGetPackageRoot)$([MSBuild]::ValueOrDefault('%(NupkgPathRelativeToPackageRoot)', '').ToLower())</RestoredNupkgPath>
|
|
||||||
<Version>[%(PackageVersion)]</Version>
|
|
||||||
</Bundled30Templates>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Bundled21Templates Update="@(Bundled21Templates)">
|
|
||||||
<NupkgPathRelativeToPackageRoot>%(Identity)/%(PackageVersion)/%(Identity).%(PackageVersion).nupkg</NupkgPathRelativeToPackageRoot>
|
|
||||||
<RestoredNupkgPath>$(NuGetPackageRoot)$([MSBuild]::ValueOrDefault('%(NupkgPathRelativeToPackageRoot)', '').ToLower())</RestoredNupkgPath>
|
|
||||||
<Version>[%(PackageVersion)]</Version>
|
|
||||||
</Bundled21Templates>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<!-- PackageDownload items must not have duplicate itemspecs, handle packages with multiple versions specially below -->
|
<BundledTemplates Update="@(BundledTemplates)">
|
||||||
|
<NupkgPathRelativeToPackageRoot>%(Identity)/%(PackageVersion)/%(Identity).%(PackageVersion).nupkg</NupkgPathRelativeToPackageRoot>
|
||||||
<PackageDownload Include="@(Bundled21Templates)" Exclude="@(PackageDownload)" />
|
<RestoredNupkgPath>$(NuGetPackageRoot)$([MSBuild]::ValueOrDefault('%(NupkgPathRelativeToPackageRoot)', '').ToLower())</RestoredNupkgPath>
|
||||||
<PackageDownload Include="@(Bundled30Templates)" Exclude="@(PackageDownload)" />
|
</BundledTemplates>
|
||||||
<PackageDownload Include="@(Bundled31Templates)" Exclude="@(PackageDownload)" />
|
|
||||||
<PackageDownload Include="@(Bundled50Templates)" Exclude="@(PackageDownload)" />
|
|
||||||
<PackageDownload Include="@(Bundled60Templates)" Exclude="@(PackageDownload)" />
|
|
||||||
|
|
||||||
<PackageDownload Update="Microsoft.DotNet.Common.ItemTemplates"
|
|
||||||
Version="[$(MicrosoftDotNetCommonItemTemplates21PackageVersion)];
|
|
||||||
[$(MicrosoftDotNetCommonItemTemplates30PackageVersion)];
|
|
||||||
[$(MicrosoftDotNetCommonItemTemplates31PackageVersion)];
|
|
||||||
[$(MicrosoftDotNetCommonItemTemplates50PackageVersion)];
|
|
||||||
[$(MicrosoftDotNetCommonItemTemplates60PackageVersion)];
|
|
||||||
" />
|
|
||||||
|
|
||||||
<PackageDownload Update="Microsoft.DotNet.Web.Spa.ProjectTemplates"
|
|
||||||
Version="[$(AspNetCorePackageVersionFor21Templates)];
|
|
||||||
" />
|
|
||||||
|
|
||||||
<PackageDownload Update="Microsoft.DotNet.Web.ItemTemplates"
|
|
||||||
Version="[$(AspNetCorePackageVersionFor21Templates)];
|
|
||||||
[$(AspNetCorePackageVersionFor30Templates)];
|
|
||||||
[$(AspNetCorePackageVersionFor31Templates)];
|
|
||||||
[$(AspNetCorePackageVersionFor50Templates)];
|
|
||||||
[$(AspNetCorePackageVersionFor60Templates)];
|
|
||||||
" />
|
|
||||||
|
|
||||||
<PackageDownload Update="NUnit3.DotNetNew.Template"
|
|
||||||
Version="[$(NUnit3Templates21PackageVersion)];
|
|
||||||
[$(NUnit3Templates30PackageVersion)];
|
|
||||||
[$(NUnit3Templates31PackageVersion)];
|
|
||||||
[$(NUnit3Templates50PackageVersion)];
|
|
||||||
" />
|
|
||||||
|
|
||||||
<PackageDownload Update="Microsoft.Dotnet.Wpf.ProjectTemplates"
|
|
||||||
Version="[$(MicrosoftDotnetWpfProjectTemplates30PackageVersion)];
|
|
||||||
[$(MicrosoftDotnetWpfProjectTemplates31PackageVersion)];
|
|
||||||
[$(MicrosoftDotnetWpfProjectTemplates50PackageVersion)];
|
|
||||||
" />
|
|
||||||
|
|
||||||
<PackageDownload Update="Microsoft.Dotnet.Winforms.ProjectTemplates"
|
|
||||||
Version="[$(MicrosoftDotnetWinFormsProjectTemplates30PackageVersion)];
|
|
||||||
[$(MicrosoftDotnetWinFormsProjectTemplates31PackageVersion)];
|
|
||||||
[$(MicrosoftDotnetWinFormsProjectTemplates50PackageVersion)];
|
|
||||||
" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
<Target Name="DownloadBundledTemplateNupkgs">
|
||||||
|
<CollatePackageDownloads Packages="@(BundledTemplates)">
|
||||||
|
<Output TaskParameter="PackageDownloads" ItemName="BundledTemplatePackageDownload" />
|
||||||
|
</CollatePackageDownloads>
|
||||||
|
<!-- Create a separate project to for template PackageDownloads, as we want to use a task in core-sdk-tasks to collate them, but we
|
||||||
|
can't use those tasks before normal NuGet restore -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<TemplatePackageDownloadProjectContent>
|
||||||
|
<![CDATA[
|
||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>$(TargetFramework)</TargetFramework>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
@(BundledTemplatePackageDownload->'<BundledTemplatePackageDownload Include="%(Identity)" Version="%(Version)" />', '
|
||||||
|
')
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
|
]]>
|
||||||
|
</TemplatePackageDownloadProjectContent>
|
||||||
|
<TemplatePackageDownloadProjectDirectory>$(IntermediateOutputPath)TemplatePackageDownloader\</TemplatePackageDownloadProjectDirectory>
|
||||||
|
<TemplatePackageDownloadProjectPath>$(TemplatePackageDownloadProjectDirectory)TemplatePackageDownloader.csproj</TemplatePackageDownloadProjectPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<MakeDir Directories="$(TemplatePackageDownloadProjectDirectory)"/>
|
||||||
|
<WriteLinesToFile Lines="$(TemplatePackageDownloadProjectContent)"
|
||||||
|
File="$(TemplatePackageDownloadProjectPath)"
|
||||||
|
Overwrite="True" WriteOnlyWhenDifferent="True" />
|
||||||
|
|
||||||
|
<MSBuild Projects="$(TemplatePackageDownloadProjectPath)"
|
||||||
|
Targets="Restore"/>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
|
||||||
<Target Name="LayoutTemplates"
|
<Target Name="LayoutTemplates"
|
||||||
DependsOnTargets="LayoutTemplatesForSDK;LayoutTemplatesFor60MSI;LayoutTemplatesFor50MSI;LayoutTemplatesFor31MSI;LayoutTemplatesFor30MSI;LayoutTemplatesFor21MSI" />
|
DependsOnTargets="LayoutTemplatesForSDK;LayoutTemplatesForMSI" />
|
||||||
|
|
||||||
<Target Name="LayoutTemplatesForSDK"
|
<Target Name="LayoutTemplatesForSDK"
|
||||||
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions">
|
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions;DownloadBundledTemplateNupkgs">
|
||||||
<ItemGroup Condition="!$(ProductMonikerRid.StartsWith('win'))">
|
<ItemGroup Condition="!$(ProductMonikerRid.StartsWith('win'))">
|
||||||
<Bundled60Templates Remove="Microsoft.Dotnet.Wpf.ProjectTemplates" />
|
<BundledTemplatesWithInstallPaths Remove="Microsoft.Dotnet.Wpf.ProjectTemplates" />
|
||||||
<Bundled60Templates Remove="Microsoft.Dotnet.WinForms.ProjectTemplates" />
|
<BundledTemplatesWithInstallPaths Remove="Microsoft.Dotnet.WinForms.ProjectTemplates" />
|
||||||
<Bundled50Templates Remove="Microsoft.Dotnet.Wpf.ProjectTemplates" />
|
|
||||||
<Bundled50Templates Remove="Microsoft.Dotnet.WinForms.ProjectTemplates" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Copy SourceFiles="%(Bundled60Templates.RestoredNupkgPath)"
|
<Copy SourceFiles="%(BundledTemplatesWithInstallPaths.RestoredNupkgPath)"
|
||||||
DestinationFolder="$(RedistLayoutPath)templates/$(BundledTemplates60InstallPath)"/>
|
DestinationFolder="$(RedistLayoutPath)templates/%(BundledTemplatesWithInstallPaths.BundledTemplateInstallPath)"
|
||||||
|
Condition="'%(BundledTemplatesWithInstallPaths.TemplateFrameworkVersion)' == '6.0'"/>
|
||||||
|
|
||||||
<!-- Since not all the templates have 6.0 versions yet, include the 5.0 versions in the layout for now -->
|
<!-- Since not all the templates have 6.0 versions yet, include the 5.0 versions in the layout for now -->
|
||||||
<Copy SourceFiles="%(Bundled50Templates.RestoredNupkgPath)"
|
<Copy SourceFiles="%(BundledTemplatesWithInstallPaths.RestoredNupkgPath)"
|
||||||
DestinationFolder="$(RedistLayoutPath)templates/$(BundledTemplates60InstallPath)"/>
|
DestinationFolder="$(RedistLayoutPath)templates/%(BundledTemplatesWithInstallPaths.BundledTemplateInstallPath)"
|
||||||
|
Condition="'%(BundledTemplatesWithInstallPaths.TemplateFrameworkVersion)' == '5.0'"/>
|
||||||
|
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="LayoutTemplatesFor60MSI"
|
<Target Name="LayoutTemplatesForMSI"
|
||||||
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions"
|
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions"
|
||||||
Condition="$(ProductMonikerRid.StartsWith('win')) And '$(Architecture)' != 'arm'">
|
Condition="$(ProductMonikerRid.StartsWith('win')) And '$(Architecture)' != 'arm'">
|
||||||
<Copy SourceFiles="%(Bundled60Templates.RestoredNupkgPath)"
|
|
||||||
DestinationFolder="$(Templates60LayoutPath)templates/$(BundledTemplates60InstallPath)"/>
|
<Copy SourceFiles="%(BundledTemplatesWithInstallPaths.RestoredNupkgPath)"
|
||||||
</Target>
|
DestinationFolder="$(BaseOutputPath)$(Configuration)\templates-%(BundledTemplatesWithInstallPaths.TemplateFrameworkVersion)\templates/%(BundledTemplatesWithInstallPaths.BundledTemplateInstallPath)"/>
|
||||||
<Target Name="LayoutTemplatesFor50MSI"
|
|
||||||
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions"
|
|
||||||
Condition="$(ProductMonikerRid.StartsWith('win')) And '$(Architecture)' != 'arm'">
|
|
||||||
<Copy SourceFiles="%(Bundled50Templates.RestoredNupkgPath)"
|
|
||||||
DestinationFolder="$(Templates50LayoutPath)templates/$(BundledTemplates50InstallPath)"/>
|
|
||||||
</Target>
|
|
||||||
<Target Name="LayoutTemplatesFor31MSI"
|
|
||||||
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions"
|
|
||||||
Condition="$(ProductMonikerRid.StartsWith('win')) And !$(Architecture.StartsWith('arm'))">
|
|
||||||
<Copy SourceFiles="%(Bundled31Templates.RestoredNupkgPath)"
|
|
||||||
DestinationFolder="$(Templates31LayoutPath)templates/$(BundledTemplates31InstallPath)"/>
|
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="LayoutTemplatesFor30MSI"
|
|
||||||
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions"
|
|
||||||
Condition="$(ProductMonikerRid.StartsWith('win')) And !$(Architecture.StartsWith('arm'))">
|
|
||||||
<Copy SourceFiles="%(Bundled30Templates.RestoredNupkgPath)"
|
|
||||||
DestinationFolder="$(Templates30LayoutPath)templates/$(BundledTemplates30InstallPath)"/>
|
|
||||||
</Target>
|
|
||||||
|
|
||||||
<Target Name="LayoutTemplatesFor21MSI"
|
|
||||||
DependsOnTargets="SetupBundledComponents;CalculateTemplatesVersions"
|
|
||||||
Condition="$(ProductMonikerRid.StartsWith('win')) And !$(Architecture.StartsWith('arm'))">
|
|
||||||
<Copy SourceFiles="%(Bundled21Templates.RestoredNupkgPath)"
|
|
||||||
DestinationFolder="$(Templates21LayoutPath)templates/$(BundledTemplates21InstallPath)"/>
|
|
||||||
</Target>
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|
|
@ -2,10 +2,6 @@
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<RedistLayoutPath>$(BaseOutputPath)$(Configuration)\dotnet\</RedistLayoutPath>
|
<RedistLayoutPath>$(BaseOutputPath)$(Configuration)\dotnet\</RedistLayoutPath>
|
||||||
<SdkInternalLayoutPath>$(BaseOutputPath)$(Configuration)\dotnet-internal\</SdkInternalLayoutPath>
|
<SdkInternalLayoutPath>$(BaseOutputPath)$(Configuration)\dotnet-internal\</SdkInternalLayoutPath>
|
||||||
<Templates50LayoutPath>$(BaseOutputPath)$(Configuration)\templates-5.0\</Templates50LayoutPath>
|
|
||||||
<Templates31LayoutPath>$(BaseOutputPath)$(Configuration)\templates-3.1\</Templates31LayoutPath>
|
|
||||||
<Templates30LayoutPath>$(BaseOutputPath)$(Configuration)\templates-3.0\</Templates30LayoutPath>
|
|
||||||
<Templates21LayoutPath>$(BaseOutputPath)$(Configuration)\templates-2.1\</Templates21LayoutPath>
|
|
||||||
<DownloadsFolder>$(IntermediateOutputPath)downloads\</DownloadsFolder>
|
<DownloadsFolder>$(IntermediateOutputPath)downloads\</DownloadsFolder>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
|
|
@ -59,10 +59,6 @@
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<SdkMSIInstallerFile>$(ArtifactsNonShippingPackagesDir)$(ArtifactNameWithVersionSdk)$(InstallerExtension)</SdkMSIInstallerFile>
|
<SdkMSIInstallerFile>$(ArtifactsNonShippingPackagesDir)$(ArtifactNameWithVersionSdk)$(InstallerExtension)</SdkMSIInstallerFile>
|
||||||
<SdkDependencyKeyName>Dotnet_CLI</SdkDependencyKeyName>
|
<SdkDependencyKeyName>Dotnet_CLI</SdkDependencyKeyName>
|
||||||
<Templates50MSIInstallerFile>$(ArtifactsNonShippingPackagesDir)dotnet-50templates-$(FullNugetVersion)-$(ProductMonikerRid)$(InstallerExtension)</Templates50MSIInstallerFile>
|
|
||||||
<Templates31MSIInstallerFile>$(ArtifactsNonShippingPackagesDir)dotnet-31templates-$(FullNugetVersion)-$(ProductMonikerRid)$(InstallerExtension)</Templates31MSIInstallerFile>
|
|
||||||
<Templates30MSIInstallerFile>$(ArtifactsNonShippingPackagesDir)dotnet-30templates-$(FullNugetVersion)-$(ProductMonikerRid)$(InstallerExtension)</Templates30MSIInstallerFile>
|
|
||||||
<Templates21MSIInstallerFile>$(ArtifactsNonShippingPackagesDir)dotnet-21templates-$(FullNugetVersion)-$(ProductMonikerRid)$(InstallerExtension)</Templates21MSIInstallerFile>
|
|
||||||
<SdkPlaceholderMSIInstallerFile>$(ArtifactsNonShippingPackagesDir)dotnet-sdkplaceholder-$(FullNugetVersion)-$(ProductMonikerRid)$(InstallerExtension)</SdkPlaceholderMSIInstallerFile>
|
<SdkPlaceholderMSIInstallerFile>$(ArtifactsNonShippingPackagesDir)dotnet-sdkplaceholder-$(FullNugetVersion)-$(ProductMonikerRid)$(InstallerExtension)</SdkPlaceholderMSIInstallerFile>
|
||||||
<SdkPlaceholderDependencyKeyName>NetCore_SdkPlaceholder</SdkPlaceholderDependencyKeyName>
|
<SdkPlaceholderDependencyKeyName>NetCore_SdkPlaceholder</SdkPlaceholderDependencyKeyName>
|
||||||
<CombinedFrameworkSdkHostMSIInstallerFile>$(ArtifactsShippingPackagesDir)$(ArtifactNameWithVersionCombinedHostHostFxrFrameworkSdk)$(BundleExtension)</CombinedFrameworkSdkHostMSIInstallerFile>
|
<CombinedFrameworkSdkHostMSIInstallerFile>$(ArtifactsShippingPackagesDir)$(ArtifactNameWithVersionCombinedHostHostFxrFrameworkSdk)$(BundleExtension)</CombinedFrameworkSdkHostMSIInstallerFile>
|
||||||
|
@ -100,10 +96,11 @@
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="MsiTargetsSetupInputOutputs"
|
<Target Name="MsiTargetsSetupInputOutputs"
|
||||||
DependsOnTargets="GenerateLayout;SetupWixProperties">
|
DependsOnTargets="GenerateLayout;SetupWixProperties;SetupTemplatesMsis">
|
||||||
<!-- Consumed By Publish -->
|
<!-- Consumed By Publish -->
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<GeneratedInstallers Include="$(SdkMSIInstallerFile);$(Templates50MSIInstallerFile);$(Templates31MSIInstallerFile);$(Templates30MSIInstallerFile);$(Templates21MSIInstallerFile);$(CombinedFrameworkSdkHostMSIInstallerFile);$(SdkPlaceholderMSIInstallerFile)" />
|
<GeneratedInstallers Include="$(SdkMSIInstallerFile);$(CombinedFrameworkSdkHostMSIInstallerFile);$(SdkPlaceholderMSIInstallerFile)" />
|
||||||
|
<GeneratedInstallers Include="@(TemplatesMsiComponent->'%(MSIInstallerFile)')" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<GenerateMsiVersion VersionRevision="$(CombinedBuildNumberAndRevision)"
|
<GenerateMsiVersion VersionRevision="$(CombinedBuildNumberAndRevision)"
|
||||||
|
@ -118,26 +115,6 @@
|
||||||
PropertyName="SdkInstallerUpgradeCode" />
|
PropertyName="SdkInstallerUpgradeCode" />
|
||||||
</GenerateGuidFromName>
|
</GenerateGuidFromName>
|
||||||
|
|
||||||
<GenerateGuidFromName Name="$(Templates50MSIInstallerFile)">
|
|
||||||
<Output TaskParameter="OutputGuid"
|
|
||||||
PropertyName="Templates50InstallerUpgradeCode" />
|
|
||||||
</GenerateGuidFromName>
|
|
||||||
|
|
||||||
<GenerateGuidFromName Name="$(Templates31MSIInstallerFile)">
|
|
||||||
<Output TaskParameter="OutputGuid"
|
|
||||||
PropertyName="Templates31InstallerUpgradeCode" />
|
|
||||||
</GenerateGuidFromName>
|
|
||||||
|
|
||||||
<GenerateGuidFromName Name="$(Templates30MSIInstallerFile)">
|
|
||||||
<Output TaskParameter="OutputGuid"
|
|
||||||
PropertyName="Templates30InstallerUpgradeCode" />
|
|
||||||
</GenerateGuidFromName>
|
|
||||||
|
|
||||||
<GenerateGuidFromName Name="$(Templates21MSIInstallerFile)">
|
|
||||||
<Output TaskParameter="OutputGuid"
|
|
||||||
PropertyName="Templates21InstallerUpgradeCode" />
|
|
||||||
</GenerateGuidFromName>
|
|
||||||
|
|
||||||
<GenerateGuidFromName Name="$(SdkPlaceholderMSIInstallerFile)">
|
<GenerateGuidFromName Name="$(SdkPlaceholderMSIInstallerFile)">
|
||||||
<Output TaskParameter="OutputGuid"
|
<Output TaskParameter="OutputGuid"
|
||||||
PropertyName="SdkPlaceholderInstallerUpgradeCode" />
|
PropertyName="SdkPlaceholderInstallerUpgradeCode" />
|
||||||
|
@ -287,40 +264,12 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<TemplatesMsiComponent Include="NetCore50TemplatesMsi">
|
<TemplatesMsiComponent Include="@(TemplatesComponents)">
|
||||||
<LayoutPath>$(Templates50LayoutPath.TrimEnd('\'))</LayoutPath>
|
<LayoutPath>$(BaseOutputPath)$(Configuration)\templates-%(TemplatesComponents.TemplatesMajorMinorVersion)</LayoutPath>
|
||||||
<MSIInstallerFile>$(Templates50MSIInstallerFile)</MSIInstallerFile>
|
<BrandName>%(TemplatesComponents.BrandNameWithoutVersion) $(Version)</BrandName>
|
||||||
<BrandName>$(BundledTemplates50BrandName)</BrandName>
|
<MsiVersion>%(TemplatesComponents.MSIVersion)</MsiVersion>
|
||||||
<MsiVersion>$(BundledTemplates50MsiVersion)</MsiVersion>
|
<UpgradeCode>%(TemplatesComponents.InstallerUpgradeCode)</UpgradeCode>
|
||||||
<UpgradeCode>$(Templates50InstallerUpgradeCode)</UpgradeCode>
|
<DependencyKeyName>NetCore_Templates_%(TemplatesComponents.TemplatesMajorMinorVersion)</DependencyKeyName>
|
||||||
<DependencyKeyName>NetCore_Templates_5.0</DependencyKeyName>
|
|
||||||
</TemplatesMsiComponent>
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup Condition="!$(Architecture.StartsWith('arm'))">
|
|
||||||
<TemplatesMsiComponent Include="NetCore31TemplatesMsi">
|
|
||||||
<LayoutPath>$(Templates31LayoutPath.TrimEnd('\'))</LayoutPath>
|
|
||||||
<MSIInstallerFile>$(Templates31MSIInstallerFile)</MSIInstallerFile>
|
|
||||||
<BrandName>$(BundledTemplates31BrandName)</BrandName>
|
|
||||||
<MsiVersion>$(BundledTemplates31MsiVersion)</MsiVersion>
|
|
||||||
<UpgradeCode>$(Templates31InstallerUpgradeCode)</UpgradeCode>
|
|
||||||
<DependencyKeyName>NetCore_Templates_3.1</DependencyKeyName>
|
|
||||||
</TemplatesMsiComponent>
|
|
||||||
<TemplatesMsiComponent Include="NetCore30TemplatesMsi">
|
|
||||||
<LayoutPath>$(Templates30LayoutPath.TrimEnd('\'))</LayoutPath>
|
|
||||||
<MSIInstallerFile>$(Templates30MSIInstallerFile)</MSIInstallerFile>
|
|
||||||
<BrandName>$(BundledTemplates30BrandName)</BrandName>
|
|
||||||
<MsiVersion>$(BundledTemplates30MsiVersion)</MsiVersion>
|
|
||||||
<UpgradeCode>$(Templates30InstallerUpgradeCode)</UpgradeCode>
|
|
||||||
<DependencyKeyName>NetCore_Templates_3.0</DependencyKeyName>
|
|
||||||
</TemplatesMsiComponent>
|
|
||||||
<TemplatesMsiComponent Include="NetCore21TemplatesMsi">
|
|
||||||
<LayoutPath>$(Templates21LayoutPath.TrimEnd('\'))</LayoutPath>
|
|
||||||
<MSIInstallerFile>$(Templates21MSIInstallerFile)</MSIInstallerFile>
|
|
||||||
<BrandName>$(BundledTemplates21BrandName)</BrandName>
|
|
||||||
<MsiVersion>$(BundledTemplates21MsiVersion)</MsiVersion>
|
|
||||||
<UpgradeCode>$(Templates21InstallerUpgradeCode)</UpgradeCode>
|
|
||||||
<DependencyKeyName>NetCore_Templates_2.1</DependencyKeyName>
|
|
||||||
</TemplatesMsiComponent>
|
</TemplatesMsiComponent>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Target>
|
</Target>
|
||||||
|
@ -335,6 +284,15 @@
|
||||||
$(SdkGenerateBundlePowershellScript)"
|
$(SdkGenerateBundlePowershellScript)"
|
||||||
Outputs="$(CombinedFrameworkSdkHostMSIInstallerFile)">
|
Outputs="$(CombinedFrameworkSdkHostMSIInstallerFile)">
|
||||||
|
|
||||||
|
<!-- Choose "latest" template MSI to go in bundle. -->
|
||||||
|
<ItemGroup>
|
||||||
|
<LatestTemplateInstallerComponent Include="@(TemplatesMsiComponent)"
|
||||||
|
Condition="'%(TemplatesMajorMinorVersion)' == '$(MajorMinorVersion)'"/>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<LatestTemplateMsiInstallerFile>@(LatestTemplateInstallerComponent->'%(MSIInstallerFile)')</LatestTemplateMsiInstallerFile>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<Exec Command="powershell -NoProfile -NoLogo $(SdkGenerateBundlePowershellScript) ^
|
<Exec Command="powershell -NoProfile -NoLogo $(SdkGenerateBundlePowershellScript) ^
|
||||||
'$(SdkMSIInstallerFile)' ^
|
'$(SdkMSIInstallerFile)' ^
|
||||||
'$(DownloadsFolder)$(DownloadedAspNetCoreSharedFxWixLibFileName)' ^
|
'$(DownloadsFolder)$(DownloadedAspNetCoreSharedFxWixLibFileName)' ^
|
||||||
|
@ -350,7 +308,7 @@
|
||||||
'$(DownloadsFolder)$(DownloadedArm64NetCoreAppHostPackInstallerFileName)' ^
|
'$(DownloadsFolder)$(DownloadedArm64NetCoreAppHostPackInstallerFileName)' ^
|
||||||
'$(DownloadsFolder)$(DownloadedAspNetTargetingPackInstallerFileName)' ^
|
'$(DownloadsFolder)$(DownloadedAspNetTargetingPackInstallerFileName)' ^
|
||||||
'$(DownloadsFolder)$(DownloadedWindowsDesktopTargetingPackInstallerFileName)' ^
|
'$(DownloadsFolder)$(DownloadedWindowsDesktopTargetingPackInstallerFileName)' ^
|
||||||
'$(Templates50MSIInstallerFile)' ^
|
'$(LatestTemplateMsiInstallerFile)' ^
|
||||||
'$(CombinedFrameworkSdkHostMSIInstallerFile)' ^
|
'$(CombinedFrameworkSdkHostMSIInstallerFile)' ^
|
||||||
'$(WixRoot)' ^
|
'$(WixRoot)' ^
|
||||||
'$(SdkBrandName)' ^
|
'$(SdkBrandName)' ^
|
||||||
|
@ -442,27 +400,12 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<TemplatesNupkgComponent Include="NetCore50TemplatesNupkg">
|
<TemplatesNupkgComponent Include="@(TemplatesComponents->'%(Identity)Nupkg')">
|
||||||
<MSIInstallerFile>$(Templates50MSIInstallerFile)</MSIInstallerFile>
|
<NupkgFile>$(ArtifactsNonShippingPackagesDir)VS.Redist.Common.NetCore.Templates.%(TemplatesMajorMinorVersion).$(FullNugetVersion).nupkg</NupkgFile>
|
||||||
<NupkgFile>$(ArtifactsNonShippingPackagesDir)VS.Redist.Common.NetCore.Templates.$(BundledTemplates50MajorMinorVersion).$(FullNugetVersion).nupkg</NupkgFile>
|
<MajorMinorVersion>%(TemplatesMajorMinorVersion)</MajorMinorVersion>
|
||||||
<MajorMinorVersion>$(BundledTemplates50MajorMinorVersion)</MajorMinorVersion>
|
|
||||||
</TemplatesNupkgComponent>
|
|
||||||
<TemplatesNupkgComponent Include="NetCore31TemplatesNupkg">
|
|
||||||
<MSIInstallerFile>$(Templates31MSIInstallerFile)</MSIInstallerFile>
|
|
||||||
<NupkgFile>$(ArtifactsNonShippingPackagesDir)VS.Redist.Common.NetCore.Templates.$(BundledTemplates31MajorMinorVersion).$(FullNugetVersion).nupkg</NupkgFile>
|
|
||||||
<MajorMinorVersion>$(BundledTemplates31MajorMinorVersion)</MajorMinorVersion>
|
|
||||||
</TemplatesNupkgComponent>
|
|
||||||
<TemplatesNupkgComponent Include="NetCore30TemplatesNupkg">
|
|
||||||
<MSIInstallerFile>$(Templates30MSIInstallerFile)</MSIInstallerFile>
|
|
||||||
<NupkgFile>$(ArtifactsNonShippingPackagesDir)VS.Redist.Common.NetCore.Templates.$(BundledTemplates30MajorMinorVersion).$(FullNugetVersion).nupkg</NupkgFile>
|
|
||||||
<MajorMinorVersion>$(BundledTemplates30MajorMinorVersion)</MajorMinorVersion>
|
|
||||||
</TemplatesNupkgComponent>
|
|
||||||
<TemplatesNupkgComponent Include="NetCore21TemplatesNupkg">
|
|
||||||
<MSIInstallerFile>$(Templates21MSIInstallerFile)</MSIInstallerFile>
|
|
||||||
<NupkgFile>$(ArtifactsNonShippingPackagesDir)VS.Redist.Common.NetCore.Templates.$(BundledTemplates21MajorMinorVersion).$(FullNugetVersion).nupkg</NupkgFile>
|
|
||||||
<MajorMinorVersion>$(BundledTemplates21MajorMinorVersion)</MajorMinorVersion>
|
|
||||||
</TemplatesNupkgComponent>
|
</TemplatesNupkgComponent>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<Target Name="GenerateVSToolsNupkg"
|
<Target Name="GenerateVSToolsNupkg"
|
||||||
|
|
|
@ -180,16 +180,10 @@
|
||||||
|
|
||||||
<Target Name="SignTemplatesMsis"
|
<Target Name="SignTemplatesMsis"
|
||||||
Condition="'$(SignCoreSdk)' == 'true'"
|
Condition="'$(SignCoreSdk)' == 'true'"
|
||||||
DependsOnTargets="SetSignProps">
|
DependsOnTargets="SetSignProps;SetupTemplatesMsis">
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<TemplatesMsiFilesToSign Include="$(Templates50MSIInstallerFile)" />
|
<TemplatesMsiFilesToSign Include="@(TemplatesMsiComponent->'%(MSIInstallerFile)')" />
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup Condition="!$(Architecture.StartsWith('arm'))">
|
|
||||||
<TemplatesMsiFilesToSign Include="$(Templates31MSIInstallerFile)" />
|
|
||||||
<TemplatesMsiFilesToSign Include="$(Templates30MSIInstallerFile)" />
|
|
||||||
<TemplatesMsiFilesToSign Include="$(Templates21MSIInstallerFile)" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue