Windows Installer changes
- Make CLI SDK MSI non-upgradable. It must alwasy be installed SxS. - The CLI bundle and SharedFx bundle are non-upgradeable.They are also installed SxS. - Make host\muxer upgradeable. It will be upgradeable till v1.0.0 RTM. Post RTM will be installed SxS with v.1.0.0. - SharedFx MSI was using the CLI MSI version. Fixing it to use the SharedFx version. - Do not allow bundles to uninstall. User will be able to uninstall the individual MSIs.
This commit is contained in:
parent
171f3998b2
commit
ccef10b70c
5 changed files with 21 additions and 12 deletions
|
@ -6,9 +6,11 @@
|
||||||
<?include "Variables.wxi" ?>
|
<?include "Variables.wxi" ?>
|
||||||
|
|
||||||
<Bundle Name="$(var.ProductName)" Manufacturer="$(var.Manufacturer)"
|
<Bundle Name="$(var.ProductName)" Manufacturer="$(var.Manufacturer)"
|
||||||
Version="$(var.DisplayVersion)" UpgradeCode="70A1576F-63B6-4659-9E39-25C7B769DDE5"
|
Version="$(var.DisplayVersion)" UpgradeCode="$(var.UpgradeCode)"
|
||||||
AboutUrl="http://dotnet.github.io/"
|
AboutUrl="http://dotnet.github.io/"
|
||||||
Compressed="yes">
|
Compressed="yes"
|
||||||
|
DisableModify="yes"
|
||||||
|
DisableRemove="yes">
|
||||||
|
|
||||||
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.Foundation">
|
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.Foundation">
|
||||||
<bal:WixStandardBootstrapperApplication
|
<bal:WixStandardBootstrapperApplication
|
||||||
|
@ -32,13 +34,13 @@
|
||||||
<util:DirectorySearch Path="[PreviousInstallFolder]" Variable="DOTNETHOME" After="PreviousInstallFolderSearch" Condition="PreviousInstallFolder" />
|
<util:DirectorySearch Path="[PreviousInstallFolder]" Variable="DOTNETHOME" After="PreviousInstallFolderSearch" Condition="PreviousInstallFolder" />
|
||||||
|
|
||||||
<Chain DisableSystemRestore="yes" ParallelCache="yes">
|
<Chain DisableSystemRestore="yes" ParallelCache="yes">
|
||||||
<MsiPackage SourceFile="$(var.CLISDKMsiSourcePath)">
|
<MsiPackage SourceFile="$(var.CLISDKMsiSourcePath)" Visible="yes">
|
||||||
<MsiProperty Name="DOTNETHOME" Value="[DOTNETHOME]" />
|
<MsiProperty Name="DOTNETHOME" Value="[DOTNETHOME]" />
|
||||||
</MsiPackage>
|
</MsiPackage>
|
||||||
<MsiPackage SourceFile="$(var.SharedFXMsiSourcePath)">
|
<MsiPackage SourceFile="$(var.SharedFXMsiSourcePath)" Visible="yes">
|
||||||
<MsiProperty Name="DOTNETHOME" Value="[DOTNETHOME]" />
|
<MsiProperty Name="DOTNETHOME" Value="[DOTNETHOME]" />
|
||||||
</MsiPackage>
|
</MsiPackage>
|
||||||
<MsiPackage SourceFile="$(var.SharedHostMsiSourcePath)">
|
<MsiPackage SourceFile="$(var.SharedHostMsiSourcePath)" Visible="yes">
|
||||||
<MsiProperty Name="DOTNETHOME" Value="[DOTNETHOME]" />
|
<MsiProperty Name="DOTNETHOME" Value="[DOTNETHOME]" />
|
||||||
</MsiPackage>
|
</MsiPackage>
|
||||||
</Chain>
|
</Chain>
|
||||||
|
|
|
@ -9,6 +9,7 @@ param(
|
||||||
[Parameter(Mandatory=$true)][string]$WixRoot,
|
[Parameter(Mandatory=$true)][string]$WixRoot,
|
||||||
[Parameter(Mandatory=$true)][string]$DotnetMSIVersion,
|
[Parameter(Mandatory=$true)][string]$DotnetMSIVersion,
|
||||||
[Parameter(Mandatory=$true)][string]$DotnetCLIVersion,
|
[Parameter(Mandatory=$true)][string]$DotnetCLIVersion,
|
||||||
|
[Parameter(Mandatory=$true)][string]$UpgradeCode,
|
||||||
[Parameter(Mandatory=$true)][string]$Architecture,
|
[Parameter(Mandatory=$true)][string]$Architecture,
|
||||||
[Parameter(Mandatory=$true)][string]$ReleaseSuffix
|
[Parameter(Mandatory=$true)][string]$ReleaseSuffix
|
||||||
)
|
)
|
||||||
|
@ -31,6 +32,7 @@ function RunCandleForBundle
|
||||||
-dDisplayVersion="$DotnetCLIVersion" `
|
-dDisplayVersion="$DotnetCLIVersion" `
|
||||||
-dReleaseSuffix="$ReleaseSuffix" `
|
-dReleaseSuffix="$ReleaseSuffix" `
|
||||||
-dCLISDKMsiSourcePath="$CLISDKMSIFile" `
|
-dCLISDKMsiSourcePath="$CLISDKMSIFile" `
|
||||||
|
-dUpgradeCode="$UpgradeCode" `
|
||||||
-dSharedFXMsiSourcePath="$SharedFxMSIFile" `
|
-dSharedFXMsiSourcePath="$SharedFxMSIFile" `
|
||||||
-dSharedHostMsiSourcePath="$SharedHostMSIFile" `
|
-dSharedHostMsiSourcePath="$SharedHostMSIFile" `
|
||||||
-arch "$Architecture" `
|
-arch "$Architecture" `
|
||||||
|
|
|
@ -7,6 +7,7 @@ param(
|
||||||
[Parameter(Mandatory=$true)][string]$WixRoot,
|
[Parameter(Mandatory=$true)][string]$WixRoot,
|
||||||
[Parameter(Mandatory=$true)][string]$DotnetMSIVersion,
|
[Parameter(Mandatory=$true)][string]$DotnetMSIVersion,
|
||||||
[Parameter(Mandatory=$true)][string]$DotnetCLIVersion,
|
[Parameter(Mandatory=$true)][string]$DotnetCLIVersion,
|
||||||
|
[Parameter(Mandatory=$true)][string]$UpgradeCode,
|
||||||
[Parameter(Mandatory=$true)][string]$Architecture,
|
[Parameter(Mandatory=$true)][string]$Architecture,
|
||||||
[Parameter(Mandatory=$true)][string]$ReleaseSuffix
|
[Parameter(Mandatory=$true)][string]$ReleaseSuffix
|
||||||
)
|
)
|
||||||
|
@ -49,6 +50,7 @@ function RunCandle
|
||||||
-dMicrosoftEula="$RepoRoot\packaging\osx\resources\en.lproj\eula.rtf" `
|
-dMicrosoftEula="$RepoRoot\packaging\osx\resources\en.lproj\eula.rtf" `
|
||||||
-dBuildVersion="$DotnetMSIVersion" `
|
-dBuildVersion="$DotnetMSIVersion" `
|
||||||
-dDisplayVersion="$DotnetCLIVersion" `
|
-dDisplayVersion="$DotnetCLIVersion" `
|
||||||
|
-dUpgradeCode="$UpgradeCode" `
|
||||||
-dReleaseSuffix="$ReleaseSuffix" `
|
-dReleaseSuffix="$ReleaseSuffix" `
|
||||||
-arch "$Architecture" `
|
-arch "$Architecture" `
|
||||||
-ext WixDependencyExtension.dll `
|
-ext WixDependencyExtension.dll `
|
||||||
|
|
|
@ -26,11 +26,9 @@
|
||||||
<?if $(var.Platform)=x86?>
|
<?if $(var.Platform)=x86?>
|
||||||
<?define Program_Files="ProgramFilesFolder"?>
|
<?define Program_Files="ProgramFilesFolder"?>
|
||||||
<?define Win64AttributeValue=no?>
|
<?define Win64AttributeValue=no?>
|
||||||
<?define UpgradeCode="25CAE344-22A6-422D-942E-942687C56A45"?>
|
|
||||||
<?elseif $(var.Platform)=x64?>
|
<?elseif $(var.Platform)=x64?>
|
||||||
<?define Program_Files="ProgramFiles64Folder"?>
|
<?define Program_Files="ProgramFiles64Folder"?>
|
||||||
<?define Win64AttributeValue=yes?>
|
<?define Win64AttributeValue=yes?>
|
||||||
<?define UpgradeCode="7D73E4F7-71E2-4236-8CF5-1C499BA3FF50"?>
|
|
||||||
<?else?>
|
<?else?>
|
||||||
<?error Invalid Platform ($(var.Platform))?>
|
<?error Invalid Platform ($(var.Platform))?>
|
||||||
<?endif?>
|
<?endif?>
|
||||||
|
|
|
@ -107,9 +107,11 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
public static BuildTargetResult GenerateCliSdkMsi(BuildTargetContext c)
|
public static BuildTargetResult GenerateCliSdkMsi(BuildTargetContext c)
|
||||||
{
|
{
|
||||||
var cliSdkRoot = c.BuildContext.Get<string>("CLISDKRoot");
|
var cliSdkRoot = c.BuildContext.Get<string>("CLISDKRoot");
|
||||||
|
var upgradeCode = Utils.GenerateGuidFromName(SdkMsi).ToString().ToUpper();
|
||||||
|
|
||||||
Cmd("powershell", "-NoProfile", "-NoLogo",
|
Cmd("powershell", "-NoProfile", "-NoLogo",
|
||||||
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "clisdk", "generatemsi.ps1"),
|
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "clisdk", "generatemsi.ps1"),
|
||||||
cliSdkRoot, SdkMsi, WixRoot, MsiVersion, CliVersion, Arch, Channel)
|
cliSdkRoot, SdkMsi, WixRoot, MsiVersion, CliVersion, upgradeCode, Arch, Channel)
|
||||||
.Execute()
|
.Execute()
|
||||||
.EnsureSuccessful();
|
.EnsureSuccessful();
|
||||||
return c.Success();
|
return c.Success();
|
||||||
|
@ -143,7 +145,8 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
var inputDir = c.BuildContext.Get<string>("SharedFrameworkPublishRoot");
|
var inputDir = c.BuildContext.Get<string>("SharedFrameworkPublishRoot");
|
||||||
var sharedFrameworkNuGetName = Monikers.SharedFrameworkName;
|
var sharedFrameworkNuGetName = Monikers.SharedFrameworkName;
|
||||||
var sharedFrameworkNuGetVersion = c.BuildContext.Get<string>("SharedFrameworkNugetVersion");
|
var sharedFrameworkNuGetVersion = c.BuildContext.Get<string>("SharedFrameworkNugetVersion");
|
||||||
var upgradeCode = Utils.GenerateGuidFromName($"{sharedFrameworkNuGetName}-{sharedFrameworkNuGetVersion}-{Arch}").ToString().ToUpper();
|
var msiVerison = sharedFrameworkNuGetVersion.Split('-')[0];
|
||||||
|
var upgradeCode = Utils.GenerateGuidFromName(SharedFrameworkMsi).ToString().ToUpper();
|
||||||
var wixObjRoot = Path.Combine(Dirs.Output, "obj", "wix", "sharedframework");
|
var wixObjRoot = Path.Combine(Dirs.Output, "obj", "wix", "sharedframework");
|
||||||
|
|
||||||
if (Directory.Exists(wixObjRoot))
|
if (Directory.Exists(wixObjRoot))
|
||||||
|
@ -154,7 +157,7 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
|
|
||||||
Cmd("powershell", "-NoProfile", "-NoLogo",
|
Cmd("powershell", "-NoProfile", "-NoLogo",
|
||||||
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "sharedframework", "generatemsi.ps1"),
|
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "sharedframework", "generatemsi.ps1"),
|
||||||
inputDir, SharedFrameworkMsi, WixRoot, MsiVersion, sharedFrameworkNuGetName, sharedFrameworkNuGetVersion, upgradeCode, Arch, wixObjRoot)
|
inputDir, SharedFrameworkMsi, WixRoot, msiVerison, sharedFrameworkNuGetName, sharedFrameworkNuGetVersion, upgradeCode, Arch, wixObjRoot)
|
||||||
.Execute()
|
.Execute()
|
||||||
.EnsureSuccessful();
|
.EnsureSuccessful();
|
||||||
return c.Success();
|
return c.Success();
|
||||||
|
@ -165,9 +168,11 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
[BuildPlatforms(BuildPlatform.Windows)]
|
[BuildPlatforms(BuildPlatform.Windows)]
|
||||||
public static BuildTargetResult GenerateCliSdkBundle(BuildTargetContext c)
|
public static BuildTargetResult GenerateCliSdkBundle(BuildTargetContext c)
|
||||||
{
|
{
|
||||||
|
var upgradeCode = Utils.GenerateGuidFromName(SdkBundle).ToString().ToUpper();
|
||||||
|
|
||||||
Cmd("powershell", "-NoProfile", "-NoLogo",
|
Cmd("powershell", "-NoProfile", "-NoLogo",
|
||||||
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "clisdk", "generatebundle.ps1"),
|
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "clisdk", "generatebundle.ps1"),
|
||||||
SdkMsi, SharedFrameworkMsi, SharedHostMsi, SdkBundle, WixRoot, MsiVersion, CliVersion, Arch, Channel)
|
SdkMsi, SharedFrameworkMsi, SharedHostMsi, SdkBundle, WixRoot, MsiVersion, CliVersion, upgradeCode, Arch, Channel)
|
||||||
.EnvironmentVariable("Stage2Dir", Dirs.Stage2)
|
.EnvironmentVariable("Stage2Dir", Dirs.Stage2)
|
||||||
.Execute()
|
.Execute()
|
||||||
.EnsureSuccessful();
|
.EnsureSuccessful();
|
||||||
|
@ -180,7 +185,7 @@ namespace Microsoft.DotNet.Cli.Build
|
||||||
{
|
{
|
||||||
var sharedFrameworkNuGetName = Monikers.SharedFrameworkName;
|
var sharedFrameworkNuGetName = Monikers.SharedFrameworkName;
|
||||||
var sharedFrameworkNuGetVersion = c.BuildContext.Get<string>("SharedFrameworkNugetVersion");
|
var sharedFrameworkNuGetVersion = c.BuildContext.Get<string>("SharedFrameworkNugetVersion");
|
||||||
var upgradeCode = Utils.GenerateGuidFromName($"{sharedFrameworkNuGetName}-{sharedFrameworkNuGetVersion}-{Arch}-bundle").ToString().ToUpper();
|
var upgradeCode = Utils.GenerateGuidFromName(SharedFrameworkBundle).ToString().ToUpper();
|
||||||
|
|
||||||
Cmd("powershell", "-NoProfile", "-NoLogo",
|
Cmd("powershell", "-NoProfile", "-NoLogo",
|
||||||
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "sharedframework", "generatebundle.ps1"),
|
Path.Combine(Dirs.RepoRoot, "packaging", "windows", "sharedframework", "generatebundle.ps1"),
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue