Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to new Microsoft.DotNet.SharedFramework.Sdk and refactor Host/Installer build subsets #38457

Merged
116 commits merged into from
Nov 13, 2020
Merged
Show file tree
Hide file tree
Changes from 107 commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
ba14e1d
Start creating runtime, apphost, and targeting packs using the new SD…
jkoritzinsky Jun 24, 2020
6802ad1
Fix generation of runtime package, runtime symbols package, and host …
jkoritzinsky Jun 24, 2020
a36a296
Correcly include hosting files and DIA in the shared framework archiv…
jkoritzinsky Jun 24, 2020
c6f72c7
Include PackageOverrides.txt in the ref pack.
jkoritzinsky Jun 24, 2020
8757c50
Fix product brand prefix.
jkoritzinsky Jun 24, 2020
cbd46d2
Add the shared host installer.
jkoritzinsky Jun 25, 2020
db70570
Add the hostfxr build and clean up MacOS building.
jkoritzinsky Jun 25, 2020
7ad7304
Rename host and hostfxr projects to ensure we don't collide with the …
jkoritzinsky Jun 25, 2020
ece261c
Add bundle installer.
jkoritzinsky Jun 25, 2020
84ab2b0
Merge branch 'master' of https://github.com/dotnet/runtime into adopt…
jkoritzinsky Jun 25, 2020
0b54120
Update platform manifest entries to include linux/mac file variations…
jkoritzinsky Jun 25, 2020
290d0fa
Update apphost pack to match master.
jkoritzinsky Jun 25, 2020
2083c85
Fix typo
jkoritzinsky Jun 25, 2020
49fbab6
Include manpages and fix linux package properties.
jkoritzinsky Jun 25, 2020
0c9b00c
Fix linux package properties.
jkoritzinsky Jun 25, 2020
6dfa868
Match short-description from packages in master.
jkoritzinsky Jun 25, 2020
63cdc70
Update to uploaded package.
jkoritzinsky Jun 25, 2020
5c637d2
Update metadata and SDK to generate an exact match of the productbuil…
jkoritzinsky Jun 26, 2020
c8bd51e
First draft moving crossgen2 to new SDK.
jkoritzinsky Jul 13, 2020
890dc74
Get crossgen2 pack working with updated SDK.
jkoritzinsky Jul 15, 2020
5ef903f
Merge remote-tracking branch 'dotnet/master' into adopt-unified-sharedfx
jkoritzinsky Jul 15, 2020
98bb6c9
Build archives from the installer and bundle projects.
jkoritzinsky Jul 15, 2020
4a0ecf0
Move the dotnet-runtime-deps installers to use the new SDK.
jkoritzinsky Jul 15, 2020
3ac3696
Rough attempt to convert the build to use the new sfx sdk.
jkoritzinsky Jul 15, 2020
361e750
Remove now empty subsets.
jkoritzinsky Jul 16, 2020
13753c6
Update installer subsets for testing.
jkoritzinsky Jul 22, 2020
31fcde4
Remove non-existent packaging project from subsets.
jkoritzinsky Jul 22, 2020
6683b7a
Add missing Windows api shim dll to platform manifest.
jkoritzinsky Jul 22, 2020
7137375
Update sharedfx sdk.
jkoritzinsky Jul 22, 2020
f8d1fbe
Add both versions of the long-name dac to the platform manifest.
jkoritzinsky Jul 23, 2020
388711d
Skip builds for non-relevant components on Mono.
jkoritzinsky Jul 23, 2020
006a761
Remove installer tests by default temporarily to validate product build.
jkoritzinsky Jul 23, 2020
0fdcd70
Remove pkgprojs subset from mono installer build since it doesn't bui…
jkoritzinsky Jul 23, 2020
a118d3d
Skip the apphost pack on mono.
jkoritzinsky Jul 23, 2020
1d84487
Update host test infra to use the new sfx projects.
jkoritzinsky Jul 23, 2020
6752318
Delete an out of date test (the alternative case this test exercises …
jkoritzinsky Jul 23, 2020
ae145b3
Fix packaging tests and remove NETStandard packaging tests since we a…
jkoritzinsky Jul 23, 2020
e2e6624
Fixes for test official build failures. Re-eneable installer tests by…
jkoritzinsky Jul 23, 2020
54496ab
Fix condition for building linux installers.
jkoritzinsky Jul 23, 2020
0ce63ef
Exclude Mono header files from the deps.json. They don't need to be i…
jkoritzinsky Jul 24, 2020
2612fba
Don't include the host files on the sfxproj.
jkoritzinsky Jul 24, 2020
d2adc6c
Add mono-specific files to the platform manifest.
jkoritzinsky Jul 24, 2020
3d994ff
Remove extra copy step in installer job.
jkoritzinsky Jul 24, 2020
06d242b
Include libmonosgen-2.0.a in platform manifest.
jkoritzinsky Jul 24, 2020
90baa80
Fix change in linux-x64 test steps.
jkoritzinsky Jul 24, 2020
f5434af
Fix display name of linux package steps.
jkoritzinsky Jul 24, 2020
7b7526d
Build the installers based on the portable build when applicable so t…
jkoritzinsky Jul 24, 2020
1840af7
The installer build no longer consumes Microsoft.NETCore.Platforms an…
jkoritzinsky Jul 24, 2020
15026fb
Set PackageBrandNameSuffix for runtime-deps packages.
jkoritzinsky Jul 25, 2020
442fed4
Updated sharedfx sdk
jkoritzinsky Jul 27, 2020
a2cdf87
Fix debian runtime-deps dependency elements.
jkoritzinsky Jul 30, 2020
d9838ff
Merge branch 'master' of https://github.com/dotnet/runtime into adopt…
jkoritzinsky Jul 30, 2020
2f6d892
Add new platform manifest entries.
jkoritzinsky Jul 30, 2020
b97b134
Add icudt.dat to the platform manifest.
jkoritzinsky Jul 30, 2020
c9597c4
Invert conditions to correctly skip generating installers on non-appl…
jkoritzinsky Jul 30, 2020
af5bcc8
Merge branch 'adopt-unified-sharedfx-official-build-test' of /mnt/d/s…
jkoritzinsky Jul 30, 2020
f521759
Create extra installer subset so we can build just the installers (an…
jkoritzinsky Jul 31, 2020
4c5828d
Fix Crossgen2 package name.
jkoritzinsky Jul 31, 2020
dd86d7f
Merge branch 'master' into adopt-unified-sharedfx
jkoritzinsky Jul 31, 2020
d26bad7
Clean up some dead MSBuild goo and update the sharedfx package so we …
jkoritzinsky Jul 31, 2020
494d9bd
Update SharedFX SDK.
jkoritzinsky Aug 3, 2020
cf95aa7
Merge branch 'master' into adopt-unified-sharedfx
jkoritzinsky Aug 3, 2020
d23d093
Fix discovery of the built dotnet layout for installer tests. Clean u…
jkoritzinsky Aug 3, 2020
9c54206
Update to use the new refactored packages.
jkoritzinsky Aug 5, 2020
160a2dd
Fix macOS build failures.
jkoritzinsky Aug 5, 2020
1a35bcc
Fix linux installer build.
jkoritzinsky Aug 5, 2020
4479907
Upgrade to newest version of the SDK and centrally manage versions.
jkoritzinsky Aug 5, 2020
a65d4c8
Merge branch 'master' of https://github.com/dotnet/runtime into adopt…
jkoritzinsky Aug 6, 2020
b4804c8
Update SDK to fix build skipping for the shared framework sdk.
jkoritzinsky Aug 6, 2020
d6be480
Update SDK with full fix for skipbuild with packaging.
jkoritzinsky Aug 6, 2020
6f9b6d5
Another try for fixing the build-skip infra.
jkoritzinsky Aug 6, 2020
78849bf
Upgrade SDK.
jkoritzinsky Aug 6, 2020
9b3bb51
Fix package ids for mono packages.
jkoritzinsky Aug 7, 2020
d0f5313
Fix installer tests after update.
jkoritzinsky Aug 7, 2020
8fe251c
Add System.Private.Runtime.InteropServices.Javascript.dll to platform…
jkoritzinsky Aug 10, 2020
29f38aa
Merge branch 'master' of https://github.com/dotnet/runtime into adopt…
jkoritzinsky Aug 20, 2020
1a71e7b
Fix Crossgen2 package to place all files in the tools folder.
jkoritzinsky Aug 20, 2020
33407b5
Update to SDK with validation targets.
jkoritzinsky Aug 22, 2020
a87e9a1
Add new ICU files to manifest.
jkoritzinsky Aug 24, 2020
7fe5c8e
Crossgen2 doesn't need to go through framework resolution so we can p…
jkoritzinsky Aug 24, 2020
a63c911
Put the property in a property group.
jkoritzinsky Aug 24, 2020
14e80f4
Merge branch 'master' of https://github.com/dotnet/runtime into adopt…
jkoritzinsky Aug 26, 2020
160bf5d
Ensure we build corehost before sfx since we no longer directly build…
jkoritzinsky Aug 26, 2020
ac5ce6c
Add missing entry for additional ICU data file.
jkoritzinsky Aug 26, 2020
299745d
Remove step downloading all artifacts and remove MSBuild glue to hook…
jkoritzinsky Aug 26, 2020
642e0f4
Merge branch 'master' into adopt-unified-sharedfx
jkoritzinsky Sep 15, 2020
faf52ec
Update SDK
jkoritzinsky Sep 15, 2020
a589182
Update SDK to get MSI fix.
jkoritzinsky Sep 15, 2020
6ee0569
Merge branch 'master' into adopt-unified-sharedfx
jkoritzinsky Sep 16, 2020
9e4ce3c
Don't even try building the hosting, crossgen2, or bundle installers …
jkoritzinsky Sep 16, 2020
1f34d31
Remove out of date comment.
jkoritzinsky Sep 16, 2020
1bd45aa
Merge branch 'master' of github.com:dotnet/runtime into adopt-unified…
jkoritzinsky Oct 29, 2020
829d01a
Rename subsets based on PR discussion.
jkoritzinsky Oct 29, 2020
a72bc60
Update platform manifest and fix path to 3rd party notices for instal…
jkoritzinsky Oct 29, 2020
55d36ba
Remove test feed.
jkoritzinsky Oct 30, 2020
dbf59d7
Update subset references I missed.
jkoritzinsky Oct 30, 2020
3b60cad
Merge branch 'master' of github.com:dotnet/runtime into adopt-unified…
jkoritzinsky Oct 30, 2020
3027275
Fixed the subset arguments in other yaml files.
jkoritzinsky Oct 30, 2020
220044f
Merge branch 'master' of github.com:dotnet/runtime into adopt-unified…
jkoritzinsky Nov 3, 2020
aafd6b1
Merge branch 'master' of github.com:dotnet/runtime into adopt-unified…
jkoritzinsky Nov 4, 2020
75a3c72
Add NuGet metadata to packs.
jkoritzinsky Nov 6, 2020
417f0d6
Add diagnostics-specific incremental signing in CoreCLR when the file…
jkoritzinsky Nov 9, 2020
77cf013
Pass sign type to job.
jkoritzinsky Nov 10, 2020
acf1a04
Merge branch 'master' of github.com:dotnet/runtime into adopt-unified…
jkoritzinsky Nov 10, 2020
e2f5cb7
Merge branch 'master' into adopt-unified-sharedfx
jkoritzinsky Nov 10, 2020
68909e2
Add new WASM files.
jkoritzinsky Nov 10, 2020
147aec4
Merge branch 'master' of github.com:dotnet/runtime into adopt-unified…
jkoritzinsky Nov 10, 2020
152cf0e
Enable static graph restore for the whole repo
jkoritzinsky Nov 11, 2020
3ac62de
Fix nits
jkoritzinsky Nov 11, 2020
590d95d
Add back the runtime-deps packages. They were lost when we moved away…
jkoritzinsky Nov 11, 2020
e7bdc72
Don't disable NuGet static graph restore.
jkoritzinsky Nov 11, 2020
454214d
Merge branch 'master' of github.com:dotnet/runtime into adopt-unified…
jkoritzinsky Nov 11, 2020
e111c6e
Make sure we sign the cross-arch same-os DAC
jkoritzinsky Nov 11, 2020
f931142
Update installers package.
jkoritzinsky Nov 12, 2020
7be2e3b
Update Installers package from arcade
ViktorHofer Nov 12, 2020
e36639b
Update installers package.
jkoritzinsky Nov 12, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions eng/Signing.props
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,21 @@
<CoreCLRCrossTargetItemsToSign Include="$(CoreCLRArtifactsPath)$(CoreCLRCrossTargetComponentDirName)/sharedFramework/*.exe" />
</ItemGroup>

<!-- Ensure that we don't miss the DAC or DBI with the globbing below -->
<PropertyGroup Condition="'$(SignDiagnostics)' == 'true'">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd say before getting this in we need to merge mmitche's changes and verify. His changes remove the target and a bunch of these operations won't play well.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I’ve already validated that these changes work and sign the files correctly. This can replace the SignBinaries group in mmitche’s PR.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this work outside a target though?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It could if L55 would use the WithMetadataValue item function to check on filename but I doubt it's worth changing it now that Jeremy already did the validation.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As discussed during standup, since we're just using globs and not using the version variables that Arcade updates, we can use this inside of an InitialTargets target if need be to ensure that we correctly sign the short name DAC, long name DAC, and DBI.

<AllowEmptySignList>false</AllowEmptySignList>
</PropertyGroup>

<ItemGroup Condition="'$(SignDiagnostics)' == 'true'">
<ItemsToSign Include="$(DiagnosticsFilesRoot)/**/mscordaccore*.dll" />
<ItemsToSign Include="$(DiagnosticsFilesRoot)/**/mscordbi.dll" />
<!-- The DAC should be signed with the SHA2 cert (both long and short name) -->
<DacFileSignInfo Include="@(ItemsToSign->'%(FileName)%(Extension)')"
Condition="$([System.String]::new('%(FileName)').StartsWith('mscordaccore'))" />
<FileSignInfo Include="@(DacFileSignInfo->ClearMetadata()->Distinct())"
CertificateName="MicrosoftSHA2" />
</ItemGroup>

<ItemGroup Condition="'$(SignBinaries)' == 'true'">
<!-- Sign CoreCLR. -->
<ItemsToSign Include="$(CoreCLRSharedFrameworkDir)*.dll" />
Expand Down
134 changes: 64 additions & 70 deletions eng/Subsets.props
Original file line number Diff line number Diff line change
Expand Up @@ -7,38 +7,24 @@

Examples:

./build.sh CoreHost
./build.sh host.native

This builds only the .NET Core Host.
This builds only the .NET host.

./build.sh corehost installer.managed
./build.sh libs+host.native

This builds the CoreHost and also the Managed installer portion (e.g. Microsoft.NET.HostModel)
projects. A space ' ' or '+' are the delimiters between multiple subsets to build.
This builds the .NET host and also the manged libraries portion.
A space ' ' or '+' are the delimiters between multiple subsets to build.

./build.sh -test installer.tests
./build.sh -test host.tests

This builds and executes the installer test projects. (The '-test' argument is an Arcade SDK argument
that indicates tests should be run. Otherwise, they'll only be built.)

Quirks:

This command looks useful, but doesn't work as expected:

./build.sh -test /p:Subset=CoreHost-Test # (Doesn't work!)

Intuitively, this should build the host, build the tests, then run the tests on the freshly
built host. What actually happens is the tests run on a previously built host. This is because
the depproj, pkgproj, and installer subsets process the host artifacts, and those didn't
rebuild because those subsets were disabled.

You can get around this limitation by running the corehost subset, manually copying host
artifacts to the test layout, then running the test subset.
-->

<PropertyGroup>
<DefaultSubsets>clr+mono+libs+installer</DefaultSubsets>
<DefaultSubsets Condition="'$(TargetsMobile)' == 'true'">mono+libs+installer</DefaultSubsets>
<DefaultSubsets>clr+mono+libs+host+packs</DefaultSubsets>
<DefaultSubsets Condition="'$(TargetsMobile)' == 'true'">mono+libs+packs</DefaultSubsets>
</PropertyGroup>

<!-- Init _subset here in to allow RuntimeFlavor to be set as early as possible -->
Expand All @@ -63,18 +49,20 @@

<DefaultLibrariesSubsets>libs.native+libs.ref+libs.src+libs.pretest+libs.packages</DefaultLibrariesSubsets>

<DefaultInstallerSubsets>corehost+installer.managed+installer.depprojs+installer.pkgprojs+bundles+installers+installer.tests</DefaultInstallerSubsets>
<DefaultInstallerSubsets Condition="'$(RuntimeFlavor)' == 'Mono'">installer.pkgprojs</DefaultInstallerSubsets>
<DefaultInstallerSubsets Condition="'$(RuntimeFlavor)' == 'Mono' and '$(TargetsMobile)' != 'true'">corehost+$(DefaultInstallerSubsets)</DefaultInstallerSubsets>
<DefaultHostSubsets>host.native+host.pkg+host.tools+host.tests</DefaultHostSubsets>
<DefaultHostSubsets Condition="'$(RuntimeFlavor)' == 'Mono'"></DefaultHostSubsets>
<DefaultHostSubsets Condition="'$(RuntimeFlavor)' == 'Mono' and '$(TargetsMobile)' != 'true'">host.native</DefaultHostSubsets>

<DefaultPacksSubsets>packs.product+packs.tests</DefaultPacksSubsets>
</PropertyGroup>

<PropertyGroup>
<_subset>$(_subset.Replace('+clr.paltests+', '+clr.paltests+clr.paltestlist+'))</_subset>
<_subset>$(_subset.Replace('+clr+', '+$(DefaultCoreClrSubsets)+'))</_subset>
<_subset>$(_subset.Replace('+mono+', '+$(DefaultMonoSubsets)+'))</_subset>
<_subset>$(_subset.Replace('+libs+', '+$(DefaultLibrariesSubsets)+'))</_subset>
<_subset>$(_subset.Replace('+installer+', '+$(DefaultInstallerSubsets)+'))</_subset>
<_subset>$(_subset.Replace('+installer.nocorehost+', '+$(DefaultInstallerSubsets.Replace('corehost+', ''))+'))</_subset>
<_subset>$(_subset.Replace('+host+', '+$(DefaultHostSubsets)+'))</_subset>
<_subset>$(_subset.Replace('+packs+', '+$(DefaultPacksSubsets)+'))</_subset>

<!-- Surround _subset in dashes to simplify checks below -->
<_subset>+$(_subset.Trim('+'))+</_subset>
Expand Down Expand Up @@ -117,19 +105,21 @@
<SubsetName Include="Libs.Packages" Description="The projects that produce NuGet packages from libraries." />
<SubsetName Include="Libs.Tests" OnDemand="true" Description="The test projects. Note that building this doesn't execute tests: you must also pass the '-test' argument." />

<!-- Installer -->
<SubsetName Include="Installer" Description="The .NET Core hosts, hosting libraries, bundles, and installers. Includes these projects' tests." />
<SubsetName Include="CoreHost" Description="The .NET Core hosts." />
<SubsetName Include="Installer.NoCoreHost" Description="Hosting libraries, bundles, and installers. Includes these projects' tests." />
<SubsetName Include="Installer.Managed" Description="The managed .NET hosting projects. This includes HostModel." />
<SubsetName Include="Installer.DepProjs" Description="The dependency projects. These gather shared framework files and run crossgen on them to turn them into ready-to-run (R2R) assemblies for the current platform." />
jkoritzinsky marked this conversation as resolved.
Show resolved Hide resolved
<SubsetName Include="Installer.PkgProjs" Description="The packaging projects. These produce NETCoreApp assets: NuGet packages, installers, zips, and Linux packages." />
<SubsetName Include="Bundles" Description="The shared framework bundle installer projects. Produces .exe installers for Windows." />
<SubsetName Include="Installers" Description="Generates additional installers. This produces the shared frameworks and their installers." />
<SubsetName Include="Installer.Tests" Description="The test projects. Note that building this doesn't execute tests: you must also pass the '-test' argument." />
<SubsetName Include="Installer.Publish" OnDemand="true" Description="Builds the installer publish infrastructure." />
<!-- Host -->
<SubsetName Include="Host" Description="The .NET hosts, packages, hosting libraries, and tests." />
<SubsetName Include="Host.Native" Description="The .NET hosts." />
<SubsetName Include="Host.Pkg" Description="The .NET host packages." />
<SubsetName Include="Host.Tools" Description="The .NET hosting libraries." />
<SubsetName Include="Host.Tests" Description="The .NET hosting tests." />

<!-- Packs -->
<SubsetName Include="Packs" Description="Builds the shared framework packs, archives, bundles, installers, and the framework pack tests." />
<SubsetName Include="Packs.Product" Description="Builds the shared framework packs, archives, bundles, and installers." />
<SubsetName Include="Packs.Installers" Description="Builds the shared framework bundles and installers." />
<SubsetName Include="Packs.Tests" Description="The framework pack tests." />

<!-- Utility -->
<SubsetName Include="publish" OnDemand="true" Description="Generate asset manifests and prepare to publish to BAR." />
<SubsetName Include="RegenerateDownloadTable" OnDemand="true" Description="Regenerates the nightly build download table" />

</ItemGroup>
Expand Down Expand Up @@ -254,57 +244,61 @@
<ProjectToBuild Include="$(LibrariesProjectRoot)tests.proj" Category="libs" Test="true" />
</ItemGroup>

<!-- Installer sets -->
<ItemGroup Condition="$(_subset.Contains('+corehost+'))">
<CorehostProjectToBuild Include="$(InstallerProjectRoot)corehost\corehost.proj" SignPhase="Binaries" />
<ProjectToBuild Include="@(CorehostProjectToBuild)" BuildInParallel="true" Pack="true" Category="installer" />
<!-- Host sets -->
<ItemGroup Condition="$(_subset.Contains('+host.native+'))">
<CorehostProjectToBuild Include="$(InstallerProjectRoot)corehost\corehost.proj" SignPhase="Binaries" BuildInParallel="false" />
<ProjectToBuild Include="@(CorehostProjectToBuild)" Pack="true" Category="host" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+installer.managed+'))">
<ItemGroup Condition="$(_subset.Contains('+host.tools+'))">
<ManagedProjectToBuild Include="$(InstallerProjectRoot)managed\**\*.csproj" SignPhase="Binaries" />
<ManagedProjectToBuild Include="$(InstallerProjectRoot)pkg\packaging\pack-managed.proj" />
<ProjectToBuild Include="@(ManagedProjectToBuild)" BuildInParallel="true" Pack="true" Category="installer" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+installer.depprojs+'))">
<DepprojProjectToBuild Condition="'$(RuntimeFlavor)' == 'CoreCLR'" Include="$(InstallerProjectRoot)pkg\projects\**\*.depproj" SignPhase="R2RBinaries" BuildInParallel="false" />
<DepprojProjectToBuild Condition="'$(RuntimeFlavor)' == 'Mono'" Include="$(InstallerProjectRoot)pkg\projects\**\*.depproj" SignPhase="Binaries" BuildInParallel="false" />
<ProjectToBuild Include="@(DepprojProjectToBuild)" Pack="true" Category="installer" />
<ProjectToBuild Include="@(ManagedProjectToBuild)" BuildInParallel="true" Pack="true" Category="host" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+installer.pkgprojs+'))">
<ItemGroup Condition="$(_subset.Contains('+host.pkg+'))">
<PkgprojProjectToBuild Include="$(InstallerProjectRoot)pkg\projects\**\*.pkgproj" SignPhase="MsiFiles" BuildInParallel="false" />
<ProjectToBuild Include="@(PkgprojProjectToBuild)" Pack="true" Category="installer" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+bundles+'))">
<BundleProjectToBuild Include="$(InstallerProjectRoot)pkg\projects\**\*.bundleproj" SignPhase="BundleInstallerFiles" BuildInParallel="false" />
<ProjectToBuild Include="@(BundleProjectToBuild)" Pack="true" Category="installer" />
<ProjectToBuild Include="@(PkgprojProjectToBuild)" Pack="true" Category="host" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+installers+'))">
<InstallerProjectToBuild Include="$(InstallerProjectRoot)pkg\packaging\installers.proj" BuildInParallel="false" />
<InstallerProjectToBuild Include="$(InstallerProjectRoot)pkg\packaging\vs-insertion-packages.proj" BuildInParallel="false" />
<ProjectToBuild Include="@(InstallerProjectToBuild)" Pack="true" Category="installer" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+installer.tests+'))">

<ItemGroup Condition="$(_subset.Contains('+host.tests+'))">
<TestProjectToBuild Include="$(InstallerProjectRoot)tests\Microsoft.NET.HostModel.Tests\AppHost.Bundle.Tests\AppHost.Bundle.Tests.csproj" />
<TestProjectToBuild Include="$(InstallerProjectRoot)tests\Microsoft.NET.HostModel.Tests\Microsoft.NET.HostModel.AppHost.Tests\Microsoft.NET.HostModel.AppHost.Tests.csproj" />
<TestProjectToBuild Include="$(InstallerProjectRoot)tests\Microsoft.NET.HostModel.Tests\Microsoft.NET.HostModel.Bundle.Tests\Microsoft.NET.HostModel.Bundle.Tests.csproj" />
<TestProjectToBuild Include="$(InstallerProjectRoot)tests\Microsoft.NET.HostModel.Tests\Microsoft.NET.HostModel.ComHost.Tests\Microsoft.NET.HostModel.ComHost.Tests.csproj" />
<TestProjectToBuild Include="$(InstallerProjectRoot)tests\HostActivation.Tests\HostActivation.Tests.csproj" />
<ProjectToBuild Include="@(TestProjectToBuild)" BuildInParallel="true" Test="true" Category="host" />
</ItemGroup>

<!-- Packs sets -->

<ItemGroup Condition="$(_subset.Contains('+packs.product+'))">
<SharedFrameworkProjectToBuild Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Ref.sfxproj" />
<SharedFrameworkProjectToBuild Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Runtime.sfxproj" />
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' != 'Mono'" Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Host.sfxproj" />
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' != 'Mono'" Include="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Crossgen2.sfxproj" />
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' != 'Mono'" Include="$(InstallerProjectRoot)pkg\sfx\installers\dotnet-host.proj" />
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' != 'Mono'" Include="$(InstallerProjectRoot)pkg\sfx\installers\dotnet-hostfxr.proj" />
<SharedFrameworkProjectToBuild Condition="'$(RuntimeFlavor)' != 'Mono'" Include="$(InstallerProjectRoot)pkg\sfx\bundle\Microsoft.NETCore.App.Bundle.bundleproj" />
<ProjectToBuild Include="@(SharedFrameworkProjectToBuild)" Category="packs" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+packs.installers+'))">
<InstallerProjectToBuild Include="$(InstallerProjectRoot)pkg\sfx\installers.proj" />
<ProjectToBuild Include="@(InstallerProjectToBuild)" Category="packs" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+packs.tests+'))">
<TestProjectToBuild Include="$(InstallerProjectRoot)tests\Microsoft.DotNet.CoreSetup.Packaging.Tests\Microsoft.DotNet.CoreSetup.Packaging.Tests.csproj" />
<ProjectToBuild Include="@(TestProjectToBuild)" BuildInParallel="true" Test="true" Category="installer" />
<ProjectToBuild Include="@(TestProjectToBuild)" BuildInParallel="true" Test="true" Category="packs" />
</ItemGroup>

<ItemGroup Condition="$(_subset.Contains('+installer.publish+'))">
<ProjectToBuild Include="$(InstallerProjectRoot)publish\prepare-artifacts.proj" Pack="true" BuildInParallel="false" Category="installer" />
<ItemGroup Condition="$(_subset.Contains('+publish+'))">
<ProjectToBuild Include="$(InstallerProjectRoot)publish\prepare-artifacts.proj" Pack="true" BuildInParallel="false" Category="publish" />
</ItemGroup>

<!-- Utility -->
<ItemGroup Condition="$(_subset.Contains('+regeneratedownloadtable+'))">
<ProjectToBuild Include="$(RepoToolsLocalDir)regenerate-download-table.proj" Pack="true" BuildInParallel="false" Category="installer" />
<ProjectToBuild Include="$(RepoToolsLocalDir)regenerate-download-table.proj" Pack="true" BuildInParallel="false" />
</ItemGroup>

<!-- Set default configurations. -->
Expand Down
8 changes: 8 additions & 0 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,18 @@
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>72b28b7e023d4c3fffa0a0b9748a7d4e8cc799be</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.Archives" Version="6.0.0-beta.20552.5">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>72b28b7e023d4c3fffa0a0b9748a7d4e8cc799be</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.Packaging" Version="6.0.0-beta.20552.5">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>72b28b7e023d4c3fffa0a0b9748a7d4e8cc799be</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.Installers" Version="6.0.0-beta.20559.8">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>55c2f07346757ddc6f1fa569b2de6506b3fdea2a</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.CodeAnalysis" Version="6.0.0-beta.20552.5">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>72b28b7e023d4c3fffa0a0b9748a7d4e8cc799be</Sha>
Expand Down
2 changes: 2 additions & 0 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,9 @@
<MicrosoftDotNetGenFacadesVersion>6.0.0-beta.20552.5</MicrosoftDotNetGenFacadesVersion>
<MicrosoftDotNetXUnitExtensionsVersion>6.0.0-beta.20552.5</MicrosoftDotNetXUnitExtensionsVersion>
<MicrosoftDotNetXUnitConsoleRunnerVersion>2.5.1-beta.20552.5</MicrosoftDotNetXUnitConsoleRunnerVersion>
<MicrosoftDotNetBuildTasksArchivesVersion>6.0.0-beta.20552.5</MicrosoftDotNetBuildTasksArchivesVersion>
<MicrosoftDotNetBuildTasksPackagingVersion>6.0.0-beta.20552.5</MicrosoftDotNetBuildTasksPackagingVersion>
<MicrosoftDotNetBuildTasksInstallersVersion>6.0.0-beta.20559.8</MicrosoftDotNetBuildTasksInstallersVersion>
<MicrosoftDotNetRemoteExecutorVersion>6.0.0-beta.20552.5</MicrosoftDotNetRemoteExecutorVersion>
<MicrosoftDotNetVersionToolsTasksVersion>6.0.0-beta.20552.5</MicrosoftDotNetVersionToolsTasksVersion>
<!-- Installer dependencies -->
Expand Down
Loading