Updated to .NET Framework 4.7.2 due to platform limitations, added email cc, bcc and some fixes.
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<Product Id="*" Name="BizTalkMonitorConfigGenerator" Language="1033" Version="1.0.0.0" Manufacturer="JR IT Services" UpgradeCode="6E45A4E8-C0C3-4267-8873-B2CF8173E9B2">
|
||||
<Package InstallerVersion="500" Compressed="yes" InstallScope="perMachine" />
|
||||
<MajorUpgrade DowngradeErrorMessage="A newer version is already installed." />
|
||||
<MediaTemplate EmbedCab="yes" />
|
||||
|
||||
<PropertyRef Id="WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED" />
|
||||
<Condition Message=".NET Framework 4.7.2 or later is required."><![CDATA[Installed OR WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED]]></Condition>
|
||||
|
||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||
<Directory Id="ProgramFilesFolder">
|
||||
<Directory Id="JRITSERVICES" Name="JR IT Services">
|
||||
<Directory Id="INSTALLDIR" Name="BizTalkMonitorConfigGenerator" />
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<Feature Id="MainFeature" Title="BizTalkMonitorConfigGenerator" Level="1">
|
||||
<ComponentGroupRef Id="GeneratorHarvest" />
|
||||
</Feature>
|
||||
</Product>
|
||||
</Wix>
|
||||
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<Product Id="*" Name="HostAvailabilityMonitor" Language="1033" Version="1.0.0.0" Manufacturer="JR IT Services" UpgradeCode="A4FC4B18-EA15-4F83-8B19-06D79AA2F2A8">
|
||||
<Package InstallerVersion="500" Compressed="yes" InstallScope="perMachine" />
|
||||
<MajorUpgrade DowngradeErrorMessage="A newer version is already installed." />
|
||||
<MediaTemplate EmbedCab="yes" />
|
||||
|
||||
<PropertyRef Id="WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED" />
|
||||
<Condition Message=".NET Framework 4.7.2 or later is required."><![CDATA[Installed OR WIX_IS_NETFRAMEWORK_472_OR_LATER_INSTALLED]]></Condition>
|
||||
|
||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||
<Directory Id="ProgramFilesFolder">
|
||||
<Directory Id="JRITSERVICES" Name="JR IT Services">
|
||||
<Directory Id="INSTALLDIR" Name="HostAvailabilityMonitor" />
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<Feature Id="MainFeature" Title="HostAvailabilityMonitor" Level="1">
|
||||
<ComponentGroupRef Id="MonitorHarvest" />
|
||||
</Feature>
|
||||
</Product>
|
||||
</Wix>
|
||||
@@ -0,0 +1,47 @@
|
||||
param(
|
||||
[string]$PublishRoot = ".\artifacts\publish\net472",
|
||||
[string]$OutputRoot = ".\artifacts\msi"
|
||||
)
|
||||
|
||||
Set-StrictMode -Version Latest
|
||||
$ErrorActionPreference = 'Stop'
|
||||
|
||||
function Get-WixTool {
|
||||
param([string]$Name)
|
||||
$cmd = Get-Command $Name -ErrorAction SilentlyContinue
|
||||
if ($cmd) { return $cmd.Source }
|
||||
throw "$Name was not found. Install WiX Toolset v3 and ensure heat.exe, candle.exe and light.exe are in PATH."
|
||||
}
|
||||
|
||||
$repoRoot = Split-Path -Parent (Split-Path -Parent $PSScriptRoot)
|
||||
$publishRootFull = [System.IO.Path]::GetFullPath((Join-Path $repoRoot $PublishRoot))
|
||||
$outputRootFull = [System.IO.Path]::GetFullPath((Join-Path $repoRoot $OutputRoot))
|
||||
New-Item -Path $outputRootFull -ItemType Directory -Force | Out-Null
|
||||
|
||||
$heat = Get-WixTool -Name 'heat.exe'
|
||||
$candle = Get-WixTool -Name 'candle.exe'
|
||||
$light = Get-WixTool -Name 'light.exe'
|
||||
|
||||
$packages = @(
|
||||
@{ Name = 'HostAvailabilityMonitor'; ProductFile = 'HostAvailabilityMonitor.wxs'; HarvestFile = 'Harvest_HostAvailabilityMonitor.wxs'; PublishDir = 'HostAvailabilityMonitor'; ComponentGroup = 'MonitorHarvest' },
|
||||
@{ Name = 'BizTalkMonitorConfigGenerator'; ProductFile = 'BizTalkMonitorConfigGenerator.wxs'; HarvestFile = 'Harvest_BizTalkMonitorConfigGenerator.wxs'; PublishDir = 'BizTalkMonitorConfigGenerator'; ComponentGroup = 'GeneratorHarvest' }
|
||||
)
|
||||
|
||||
foreach ($package in $packages) {
|
||||
$sourceDir = Join-Path $publishRootFull $package.PublishDir
|
||||
if (-not (Test-Path -LiteralPath $sourceDir)) {
|
||||
throw "Publish directory not found: $sourceDir"
|
||||
}
|
||||
|
||||
$harvestPath = Join-Path $outputRootFull $package.HarvestFile
|
||||
$productPath = Join-Path $PSScriptRoot $package.ProductFile
|
||||
$productObj = Join-Path $outputRootFull ($package.Name + '.wixobj')
|
||||
$harvestObj = Join-Path $outputRootFull ($package.Name + '.harvest.wixobj')
|
||||
$msiPath = Join-Path $outputRootFull ($package.Name + '.msi')
|
||||
|
||||
& $heat dir $sourceDir -cg $package.ComponentGroup -dr INSTALLDIR -gg -scom -sreg -sfrag -var var.SourceDir -out $harvestPath
|
||||
& $candle -ext WixNetFxExtension -dSourceDir=$sourceDir -out $productObj $productPath
|
||||
& $candle -ext WixNetFxExtension -dSourceDir=$sourceDir -out $harvestObj $harvestPath
|
||||
& $light -ext WixNetFxExtension -out $msiPath $productObj $harvestObj
|
||||
Write-Host "Built MSI: $msiPath"
|
||||
}
|
||||
Reference in New Issue
Block a user