Skip to content

Commit d159687

Browse files
authored
Use the Installers Arcade package to build the ref pack and targeting pack installers (#59406)
* Use the Installers Arcade package to build the ref pack MSI * Convert Shared Framework msi to use the Installer shared tooling. * Remove now-unused file * Adjust the conditions for adding the installer targets to work better with how the build is structured in CI. * Remove deleted wixprojs from Build.props and Installers.slnf. * Migrate the Shared Framework bundle to use the installer SDK (with arcade changes) * Disable package validation * The bundleproj isn't packable * Remove dead reference * Pass the full path to the sharedfx installers instead of just the file name * We need to pass the name due to other reasons, pass what we need to construct the paths
1 parent ad2b386 commit d159687

38 files changed

+70
-833
lines changed

AspNetCore.sln

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1588,12 +1588,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CommonLib", "src\Installers
15881588
EndProject
15891589
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AspNetCoreModule-Setup", "AspNetCoreModule-Setup", "{D30A658D-61F6-444B-9AC7-F66A1A1B86B6}"
15901590
EndProject
1591-
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SharedFramework", "SharedFramework", "{31854B06-DC6B-4416-97C3-559CC390B8B4}"
1592-
EndProject
1593-
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SharedFramework", "src\Installers\Windows\SharedFramework\SharedFramework.wixproj", "{C681D730-4505-42C6-9E6C-87F757C4FB32}"
1594-
EndProject
1595-
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SharedFrameworkBundle", "src\Installers\Windows\SharedFrameworkBundle\SharedFrameworkBundle.wixproj", "{D6C54D8B-043F-4877-B751-60E7390F9EC6}"
1596-
EndProject
15971591
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "WindowsHostingBundle", "src\Installers\Windows\WindowsHostingBundle\WindowsHostingBundle.wixproj", "{6F1B115C-1903-40CB-837D-7961AB610F4E}"
15981592
EndProject
15991593
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ServerComparison.TestSites", "src\Servers\testassets\ServerComparison.TestSites\ServerComparison.TestSites.csproj", "{56DFE643-7F0F-40C8-9F7F-8EA5357781EF}"
@@ -9727,26 +9721,6 @@ Global
97279721
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|x86.ActiveCfg = Release|Win32
97289722
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|x86.Build.0 = Release|Win32
97299723
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|x86.Deploy.0 = Release|Win32
9730-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|Any CPU.ActiveCfg = Debug|arm64
9731-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|arm64.ActiveCfg = Debug|arm64
9732-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|arm64.Build.0 = Debug|arm64
9733-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|x64.ActiveCfg = Debug|arm64
9734-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|x86.ActiveCfg = Debug|arm64
9735-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|Any CPU.ActiveCfg = Release|arm64
9736-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|arm64.ActiveCfg = Release|arm64
9737-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|arm64.Build.0 = Release|arm64
9738-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|x64.ActiveCfg = Release|arm64
9739-
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|x86.ActiveCfg = Release|arm64
9740-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|Any CPU.ActiveCfg = Debug|arm64
9741-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|arm64.ActiveCfg = Debug|arm64
9742-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|arm64.Build.0 = Debug|arm64
9743-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|x64.ActiveCfg = Debug|arm64
9744-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|x86.ActiveCfg = Debug|arm64
9745-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|Any CPU.ActiveCfg = Release|arm64
9746-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|arm64.ActiveCfg = Release|arm64
9747-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|arm64.Build.0 = Release|arm64
9748-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|x64.ActiveCfg = Release|arm64
9749-
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|x86.ActiveCfg = Release|arm64
97509724
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Debug|Any CPU.ActiveCfg = Debug|arm64
97519725
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Debug|arm64.ActiveCfg = Debug|arm64
97529726
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Debug|arm64.Build.0 = Debug|arm64
@@ -11771,9 +11745,6 @@ Global
1177111745
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E} = {D30A658D-61F6-444B-9AC7-F66A1A1B86B6}
1177211746
{B54A8F61-60DE-4AD9-87CA-D102F230678E} = {D30A658D-61F6-444B-9AC7-F66A1A1B86B6}
1177311747
{D30A658D-61F6-444B-9AC7-F66A1A1B86B6} = {5E46DC83-C39C-4E3A-B242-C064607F4367}
11774-
{31854B06-DC6B-4416-97C3-559CC390B8B4} = {5E46DC83-C39C-4E3A-B242-C064607F4367}
11775-
{C681D730-4505-42C6-9E6C-87F757C4FB32} = {31854B06-DC6B-4416-97C3-559CC390B8B4}
11776-
{D6C54D8B-043F-4877-B751-60E7390F9EC6} = {31854B06-DC6B-4416-97C3-559CC390B8B4}
1177711748
{5244BC49-2568-4701-80A6-EAB8950AB5FA} = {31854B06-DC6B-4416-97C3-559CC390B8B4}
1177811749
{6F1B115C-1903-40CB-837D-7961AB610F4E} = {5E46DC83-C39C-4E3A-B242-C064607F4367}
1177911750
{56DFE643-7F0F-40C8-9F7F-8EA5357781EF} = {3CBC4802-E9B8-48B7-BC8C-B0AFB9EEC643}

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@
239239
<PublicBaseURL Condition="'$(PublicBaseURL)' == ''">https://dotnetbuilds.azureedge.net/public/</PublicBaseURL>
240240
<InternalBaseURL>https://dotnetbuilds.azureedge.net/internal/</InternalBaseURL>
241241
<!-- Allow overriding where installers are pulled in from previously completed jobs in Unified Build scenarios. -->
242-
<CrossArchitectureInstallerBasePath Condition="'$(CrossArchitectureInstallerBasePath)' == ''">$(InstallersOutputPath)</CrossArchitectureInstallerBasePath>
242+
<CrossArchitectureInstallerBasePath Condition="'$(CrossArchitectureInstallerBasePath)' == ''">$(ArtifactsShippingPackagesDir)</CrossArchitectureInstallerBasePath>
243243
</PropertyGroup>
244244

245245
<!-- Try various places to find the runtime. It's either released (use official version),

eng/Build.props

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,7 @@
120120
$(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-runtime.proj;
121121
$(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-runtime-composite.proj;
122122
$(RepoRoot)src\Framework\App.Runtime\src\aspnetcore-base-runtime.proj;
123+
$(RepoRoot)src\Framework\App.Runtime\bundle\aspnetcore-runtime-bundle.bundleproj;
123124
$(RepoRoot)src\Framework\AspNetCoreAnalyzers\test\Microsoft.AspNetCore.App.Analyzers.Test.csproj;
124125
$(RepoRoot)src\Framework\test\Microsoft.AspNetCore.App.UnitTests.csproj;
125126
$(RepoRoot)src\Assets\**\*.*proj;
@@ -241,22 +242,6 @@
241242
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\AspNetCoreModule-Setup\ANCMV2\ANCMV2.wixproj" AdditionalProperties="Platform=x86" />
242243
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\AspNetCoreModule-Setup\ANCMV2\ANCMV2.wixproj" AdditionalProperties="Platform=arm64" />
243244

244-
<!-- Build the targeting pack installers -->
245-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\TargetingPack\TargetingPack.wixproj" AdditionalProperties="Platform=x64" />
246-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\TargetingPack\TargetingPack.wixproj" AdditionalProperties="Platform=x86" />
247-
<!-- This really shouldn't be here, but instead of harvesting from the intermediate/output directories, the targeting pack installer logic
248-
harvests from a zip of the reference assemblies. Producing it in each leg ends up with multiple targeting packs
249-
getting produced and the BAR will reject the build. Centralize building the targeting pack in the x86/x64 leg. -->
250-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\TargetingPack\TargetingPack.wixproj" AdditionalProperties="Platform=arm64" />
251-
252-
<!-- Build the SharedFramework installers -->
253-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFrameworkBundle\SharedFrameworkBundle.wixproj" AdditionalProperties="Platform=x64" />
254-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFrameworkBundle\SharedFrameworkBundle.wixproj" AdditionalProperties="Platform=x86" />
255-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFrameworkBundle\SharedFrameworkBundle.wixproj" AdditionalProperties="Platform=arm64" />
256-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFramework\SharedFramework.wixproj" AdditionalProperties="Platform=x64" />
257-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFramework\SharedFramework.wixproj" AdditionalProperties="Platform=x86" />
258-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFramework\SharedFramework.wixproj" AdditionalProperties="Platform=arm64" />
259-
260245
<!-- Windows hosting bundle -->
261246
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\WindowsHostingBundle\WindowsHostingBundle.wixproj" AdditionalProperties="Platform=x86" />
262247
</ItemGroup>
@@ -268,11 +253,6 @@
268253
<!-- Build the ANCM msis -->
269254
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\AspNetCoreModule-Setup\ANCMIISExpressV2\AncmIISExpressV2.wixproj" AdditionalProperties="Platform=$(TargetArchitecture)" />
270255
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\AspNetCoreModule-Setup\ANCMV2\ANCMV2.wixproj" AdditionalProperties="Platform=$(TargetArchitecture)" />
271-
<!-- Build the targeting pack installers -->
272-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\TargetingPack\TargetingPack.wixproj" AdditionalProperties="Platform=$(TargetArchitecture)" />
273-
<!-- Build the SharedFramework installers -->
274-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFrameworkBundle\SharedFrameworkBundle.wixproj" AdditionalProperties="Platform=$(TargetArchitecture)" />
275-
<InstallerProject Include="$(RepoRoot)src\Installers\Windows\SharedFramework\SharedFramework.wixproj" AdditionalProperties="Platform=$(TargetArchitecture)" />
276256
</ItemGroup>
277257

278258
<ItemGroup Condition="'$(DotNetBuild)' == 'true' and ('$(DotNetBuildPass)' == '2') and '$(TargetOsName)' == 'win' and '$(TargetArchitecture)' == 'x64'">

src/Framework/App.Ref/src/Microsoft.AspNetCore.App.Ref.sfxproj

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<InstallerName>$(TargetingPackInstallerBaseName)</InstallerName>
1414
<GenerateInstallers>true</GenerateInstallers>
1515
<ProductBrandPrefix>Microsoft ASP.NET Core</ProductBrandPrefix>
16+
<VSInsertionShortComponentName>AspNetCore.TargetingPack</VSInsertionShortComponentName>
1617

1718
<IsPackable Condition="'$(OnlyPackPlatformSpecificPackages)' == 'true'">false</IsPackable>
1819

@@ -22,6 +23,7 @@
2223
<LicenseFile>$(RepoRoot)LICENSE.txt</LicenseFile>
2324
<MajorVersion>$(AspNetCoreMajorVersion)</MajorVersion>
2425
<MinorVersion>$(AspNetCoreMinorVersion)</MinorVersion>
26+
<PatchVersion>$(AspNetCorePatchVersion)</PatchVersion>
2527

2628
<!-- Needed some creativity to convert the PackageVersion M.N.P-PreReleaseVersionLabel-Build to the installer version M.N.P~PreReleaseVersionLabel-Build, The conditional handles stabilized builds -->
2729
<DotnetTargetingPackDependencyVersion>$(MicrosoftNETCoreAppRefVersion)</DotnetTargetingPackDependencyVersion>
@@ -32,15 +34,17 @@
3234
<DisablePackageReferenceRestrictions>true</DisablePackageReferenceRestrictions>
3335
</PropertyGroup>
3436

35-
<PropertyGroup Condition="'$(BuildInstallers)' == 'true'">
37+
<PropertyGroup Condition="'$(BuildInstallers)' == 'true' or '$(TargetOsName)' == 'win'">
38+
<GenerateInstallers Condition="'$(DotNetBuildSourceOnly)' != 'true'">true</GenerateInstallers>
3639
<BuildDebPackage Condition="'$(RuntimeIdentifier)' == 'linux-x64'">true</BuildDebPackage>
3740
<BuildRpmPackage Condition="'$(RuntimeIdentifier)' == 'linux-x64' or '$(RuntimeIdentifier)' == 'linux-arm64'">true</BuildRpmPackage>
3841
<UseArcadeRpmTooling>true</UseArcadeRpmTooling>
42+
<GenerateVSInsertionPackages>true</GenerateVSInsertionPackages>
3943
</PropertyGroup>
4044

4145
<ItemGroup>
4246
<PackageReference Include="Microsoft.DotNet.Build.Tasks.Archives" Version="$(MicrosoftDotNetBuildTasksArchivesVersion)" />
43-
<PackageReference Condition="('$(RuntimeIdentifier)' == 'linux-x64' or '$(RuntimeIdentifier)' == 'linux-arm64') and '$(DotNetBuildSourceOnly)' != 'true'" Include="Microsoft.DotNet.Build.Tasks.Installers" Version="$(MicrosoftDotNetBuildTasksInstallersVersion)" />
47+
<PackageReference Condition="'$(GenerateInstallers)' == 'true'" Include="Microsoft.DotNet.Build.Tasks.Installers" Version="$(MicrosoftDotNetBuildTasksInstallersVersion)" />
4448
<LinuxPackageDependency Include="dotnet-targeting-pack-$(DotnetTargetingPackDependencyMajorMinorVersion)" Version="$(DotnetTargetingPackDependencyVersion)" />
4549
</ItemGroup>
4650

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
<Project>
2+
<Import Project="Sdk.props" Sdk="Microsoft.Build.NoTargets" />
3+
4+
<PropertyGroup>
5+
<TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
6+
<!-- We aren't producing a NuGet package here, so disable package validation -->
7+
<EnablePackageValidation>false</EnablePackageValidation>
8+
<IsPackable>false</IsPackable>
9+
<BundleInstallerUpgradeCodeSeed>ASP.NET Core Shared Framework Bundle Installer</BundleInstallerUpgradeCodeSeed>
10+
<BundleThemeDirectory>$(MSBuildProjectDirectory)</BundleThemeDirectory>
11+
<InstallerName>aspnetcore-runtime</InstallerName>
12+
<InstallerRuntimeIdentifiers>win-x86;win-x64;win-arm64</InstallerRuntimeIdentifiers>
13+
<RuntimeIdentifier>$(TargetRuntimeIdentifier)</RuntimeIdentifier>
14+
<ProductBrandPrefix>Microsoft ASP.NET Core</ProductBrandPrefix>
15+
<BundleNameSuffix>Runtime</BundleNameSuffix>
16+
17+
<MajorVersion>$(AspNetCoreMajorVersion)</MajorVersion>
18+
<MinorVersion>$(AspNetCoreMinorVersion)</MinorVersion>
19+
<PatchVersion>$(AspNetCorePatchVersion)</PatchVersion>
20+
21+
<DisablePackageReferenceRestrictions>true</DisablePackageReferenceRestrictions>
22+
<WixBootstrapperFlavor>HyperlinkLicense</WixBootstrapperFlavor>
23+
</PropertyGroup>
24+
25+
<ItemGroup>
26+
<PackageReference Include="Microsoft.DotNet.Build.Tasks.Installers" Version="$(MicrosoftDotNetBuildTasksInstallersVersion)" />
27+
</ItemGroup>
28+
29+
<ItemGroup>
30+
<BundleComponentReference Include="$(RepoRoot)/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.sfxproj" />
31+
</ItemGroup>
32+
33+
<Import Project="Sdk.targets" Sdk="Microsoft.Build.NoTargets" />
34+
35+
<PropertyGroup>
36+
<BundleNameShort>Microsoft ASP.NET Core $(PackageBrandingVersion)</BundleNameShort>
37+
<BundleNameSub>Shared Framework</BundleNameSub>
38+
<BundleName>$(BundleNameShort) - $(BundleNameSub) ($(TargetArchitecture))</BundleName>
39+
<BundleNameFull>$(BundleName)</BundleNameFull>
40+
</PropertyGroup>
41+
42+
<ItemGroup>
43+
<WixThemeVariable Include="BundleNameShort" Value="$(BundleNameShort)" />
44+
<WixThemeVariable Include="BundleNameSub" Value="$(BundleNameSub)" />
45+
<WixThemeVariable Include="BundleName" Value="$(BundleName)" />
46+
<WixThemeVariable Include="BundleNameFull" Value="$(BundleNameFull)" />
47+
</ItemGroup>
48+
</Project>
File renamed without changes.

src/Installers/Windows/SharedFrameworkBundle/1028/thm.wxl renamed to src/Framework/App.Runtime/bundle/theme/1028/bundle.wxl

File renamed without changes.

src/Installers/Windows/SharedFrameworkBundle/1029/thm.wxl renamed to src/Framework/App.Runtime/bundle/theme/1029/bundle.wxl

File renamed without changes.

src/Installers/Windows/SharedFrameworkBundle/1031/thm.wxl renamed to src/Framework/App.Runtime/bundle/theme/1031/bundle.wxl

File renamed without changes.

src/Installers/Windows/SharedFrameworkBundle/1033/thm.wxl renamed to src/Framework/App.Runtime/bundle/theme/1033/bundle.wxl

File renamed without changes.

0 commit comments

Comments
 (0)