Add light/lit command packages (#25334)

* Add light/lit command packages
This adds light command package generation to aspnetcore.
After build of a wix project, generate a light package based off of the inputs that are sent to light.exe/lit.exe.
This commit is contained in:
Matt Mitchell 2020-08-31 14:19:34 -07:00 committed by GitHub
parent a73ae505a2
commit 6a3ce0d974
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 69 additions and 0 deletions

View File

@ -321,6 +321,10 @@
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>f2b7fe854a0b1f78c04dfc065164d6d61040f5b8</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.Installers" Version="5.0.0-beta.20427.5">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>f2b7fe854a0b1f78c04dfc065164d6d61040f5b8</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="5.0.0-beta.20427.5">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>f2b7fe854a0b1f78c04dfc065164d6d61040f5b8</Sha>

View File

@ -143,6 +143,9 @@
<MicrosoftEntityFrameworkCoreToolsPackageVersion>5.0.0-rc.1.20431.2</MicrosoftEntityFrameworkCoreToolsPackageVersion>
<MicrosoftEntityFrameworkCorePackageVersion>5.0.0-rc.1.20431.2</MicrosoftEntityFrameworkCorePackageVersion>
<MicrosoftEntityFrameworkCoreDesignPackageVersion>5.0.0-rc.1.20431.2</MicrosoftEntityFrameworkCoreDesignPackageVersion>
<!-- Packages from dotnet/arcade -->
<MicrosoftDotNetBuildTasksInstallersPackageVersion>5.0.0-beta.20427.5</MicrosoftDotNetBuildTasksInstallersPackageVersion>
</PropertyGroup>
<!--

View File

@ -40,4 +40,23 @@
<PropertyGroup>
<PackageFileName>$(InternalInstallerBaseName)-$(PackageVersion)-win-$(Platform)$(TargetExt)</PackageFileName>
</PropertyGroup>
<!-- Overwrite the wix package drop creation target to create a lit
package instead. -->
<Target Name="CreateWixPackageDrop" AfterTargets="Build">
<CreateLitCommandPackageDrop
LitCommandWorkingDir="$(WixCommandObjDir)"
WixExtensions="@(WixExtension)"
Bf="true"
Out="$(InstallersOutputPath)$(OutputName).wixlib"
WixSrcFiles="@(CompileObjOutput);@(WixObject);@(WixLibProjects);@(WixLibrary)">
<Output TaskParameter="LitCommandPackageNameOutput" PropertyName="_LitCommandPackageNameOutput" />
</CreateLitCommandPackageDrop>
<MakeDir Directories="$(WixCommandPackagesDir)" />
<ZipDirectory
DestinationFile="$(WixCommandPackagesDir)/LitCommandPackage-$(_LitCommandPackageNameOutput).zip"
SourceDirectory="$(WixCommandObjDir)/$(_LitCommandPackageNameOutput)"
Overwrite="true" />
</Target>
</Project>

View File

@ -28,4 +28,12 @@
<GenerateNupkgPowershellScript>$(RepoRoot)\src\Installers\Windows\GenerateNugetPackageWithMsi.ps1</GenerateNupkgPowershellScript>
</PropertyGroup>
<!-- Properties for light/lit command package drop generation -->
<PropertyGroup>
<!-- Directory for the unzipped directory -->
<WixCommandObjDir>$(ArtifactsObjDir)/WixCommandPackages</WixCommandObjDir>
<!-- Directory for the zipped up light/lit command package -->
<WixCommandPackagesDir>$(ArtifactsNonShippingPackagesDir)</WixCommandPackagesDir>
</PropertyGroup>
</Project>

View File

@ -24,6 +24,18 @@
<GuidInputs>$(Version);$(Platform);$(VersionSuffix);$(_BuildNumberLabels)</GuidInputs>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.DotNet.Build.Tasks.Installers" Version="$(MicrosoftDotNetBuildTasksInstallersPackageVersion)" />
</ItemGroup>
<PropertyGroup>
<MicrosoftDotNetBuildTasksInstallersTaskAssembly Condition="'$(MSBuildRuntimeType)' == 'Core'">$(NuGetPackageRoot)microsoft.dotnet.build.tasks.installers\$(MicrosoftDotNetBuildTasksInstallersPackageVersion)\tools\netcoreapp2.0\Microsoft.DotNet.Build.Tasks.Installers.dll</MicrosoftDotNetBuildTasksInstallersTaskAssembly>
<MicrosoftDotNetBuildTasksInstallersTaskAssembly Condition="'$(MSBuildRuntimeType)' != 'Core'">$(NuGetPackageRoot)microsoft.dotnet.build.tasks.installers\$(MicrosoftDotNetBuildTasksInstallersPackageVersion)\tools\net472\Microsoft.DotNet.Build.Tasks.Installers.dll</MicrosoftDotNetBuildTasksInstallersTaskAssembly>
</PropertyGroup>
<UsingTask TaskName="CreateLightCommandPackageDrop" AssemblyFile="$(MicrosoftDotNetBuildTasksInstallersTaskAssembly)" />
<UsingTask TaskName="CreateLitCommandPackageDrop" AssemblyFile="$(MicrosoftDotNetBuildTasksInstallersTaskAssembly)" />
<Target Name="GenerateGUIDs" BeforeTargets="BeforeBuild" DependsOnTargets="_GeneratePackageGuids;_GenerateBundleGuids" Condition=" '$(DisableGuidGeneration)' != 'true' " />
<Target Name="_GeneratePackageGuids" Condition="'$(OutputType)' == 'package'">
@ -72,4 +84,27 @@
<Copy SourceFiles="@(_cabs)" DestinationFolder="$(InstallersOutputPath)" />
</Target>
<Target Name="CreateWixPackageDrop" AfterTargets="Build">
<CreateLightCommandPackageDrop
LightCommandWorkingDir="$(WixCommandObjDir)"
NoLogo="true"
Cultures="en-us"
Out="$(InstallersOutputPath)$(PackageFileName)"
AdditionalBasePaths="$(MSBuildProjectDirectory)"
WixExtensions="@(WixExtension)"
Loc="@(EmbeddedResource)"
Sice="$(SuppressIces)"
WixProjectFile="$(MSBuildProjectFile)"
Fv="true"
WixSrcFiles="@(CompileObjOutput);@(WixObject);@(WixLibProjects);@(_ResolvedWixLibraryPaths)">
<Output TaskParameter="LightCommandPackageNameOutput" PropertyName="_LightCommandPackageNameOutput" />
</CreateLightCommandPackageDrop>
<MakeDir Directories="$(WixCommandPackagesDir)" />
<ZipDirectory
DestinationFile="$(WixCommandPackagesDir)/LightCommandPackage-$(_LightCommandPackageNameOutput).zip"
SourceDirectory="$(WixCommandObjDir)/$(_LightCommandPackageNameOutput)"
Overwrite="true" />
</Target>
</Project>