Build all template package versions in servicing for source-build
See original GitHub issueCurrently building release/6.01xx doesn’t produce the template packages. This is because IsPackable
is set to false for preview and servicing releases as described here. This doesn’t work well for .NET source-build which needs to product the entire product for every build (e.g. previews, rtm, servicing, etc).
Would it be amenable to conditionally build all template packages during source-build (e.g. Condition=“‘$(DotNetBuildFromSource)’ == ‘true’”)?
Currently source-build treats these packages as text-only packages that are checked in/reverse engineered. This solution is not ideal as it requires manual updates, is a maintenance burden, and in general is problematic.
This issue is similar in nature to https://github.com/dotnet/aspnetcore/issues/39471.
Issue Analytics
- State:
- Created 2 years ago
- Comments:7 (7 by maintainers)
Top GitHub Comments
@MichaelSimons Yes, the previous template versions should not be needed for source build. They are not included in the binary (ZIP) distribution on Windows, and I don’t think they are included in the standalone installer either. I think the reason that they are referenced and produced in the installer repo is because the older template versions are inserted into Visual Studio together with the .NET SDK.
Basically you should be good to ignore all of the templates from previous major versions in source build.
Let’s take a step back and make sure all template versions are necessary for our source-build scenarios. As I look at installer logic here, it looks like the 6.0 build only requires the 6.0 templates for source-build. The other version references are needed when producing the MSI. Source build doesn’t support Windows. @dsplaisted, @marcpopMSFT - can you confirm? Can we condition out the 5.0, 3.1, 3.0, and 2.1 template reference when building source-build or more abstractly non-win/non-arm?