[java-idp-jetty-base] 01/11: IDP-2147 Investigate Wix V4
Rod Widdowson
rdw at steadingsoftware.com
Fri Nov 3 13:03:10 UTC 2023
This is an automated email from the git hooks/post-receive script.
rdw pushed a commit to branch dev/IDP-2147
in repository java-idp-jetty-base.
View the commit online:
http://git.shibboleth.net/view/?p=java-idp-jetty-base.git;a=commit;h=a8c1ab23f2f054d9d845028255f806ccb843735c
commit a8c1ab23f2f054d9d845028255f806ccb843735c
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Fri Sep 8 15:30:34 2023 +0100
IDP-2147 Investigate Wix V4
https://shibboleth.atlassian.net/browse/IDP-2147
Preliminary conversion using "wix convert".
---
src/main/wix/Jetty-Delete.wxs | 12 ++--
src/main/wix/Jetty-Gui.wxs | 78 +++++++++-------------
src/main/wix/Jetty-InstallDlg.wxs | 48 ++++---------
src/main/wix/Jetty-Main.wxs | 72 ++++++++++----------
src/main/wix/Jetty-Procrun.wxs | 71 +++++++++-----------
src/main/wix/Jetty-User.wxs | 137 ++++++++++++++++++--------------------
6 files changed, 180 insertions(+), 238 deletions(-)
diff --git a/src/main/wix/Jetty-Delete.wxs b/src/main/wix/Jetty-Delete.wxs
index 999d704..13f396e 100644
--- a/src/main/wix/Jetty-Delete.wxs
+++ b/src/main/wix/Jetty-Delete.wxs
@@ -1,6 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- Licensed under the Apache License, Version 2.0 (the "License");
+<!-- Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
@@ -12,11 +10,11 @@
implied. See the License for the specific language governing
permissions and limitations under the License. -->
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
<!-- Explicit delete behind ourselves on installs -->
<Fragment>
<ComponentGroup Id="DeleteFiles">
- <Component Id="RemoveOldJetty" Guid="{871D0584-3000-4E39-9C1F-19586A6F70C6}" Win64="no" Directory="IDP_INSTALLDIR">
+ <Component Id="RemoveOldJetty" Guid="{871D0584-3000-4E39-9C1F-19586A6F70C6}" Directory="IDP_INSTALLDIR" Bitness="always32">
<RegistryValue Id="RemoveOldJettyBaseEtc" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="RemoveOldJettyBaseEtc" Value="TRUE" Type="string" KeyPath="yes" />
<util:RemoveFolderEx On="install" Property="OldJettyBaseEtc" />
<util:RemoveFolderEx On="install" Property="OldJettyBaseLib" />
@@ -25,12 +23,12 @@
<util:RemoveFolderEx On="both" Property="OldJettyBaseTmp" />
</Component>
- <Component Id="RemoveJettyDir" Guid="{35369D63-E95B-46B4-9431-7B8B35A7F85E}" Win64="no" Directory="TARGETDIR">
+ <Component Id="RemoveJettyDir" Guid="{35369D63-E95B-46B4-9431-7B8B35A7F85E}" Directory="TARGETDIR" Bitness="always32">
<RegistryValue Id="RemoveJettyDir" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettyDir" Value="TRUE" Type="string" KeyPath="yes" />
<util:RemoveFolderEx On="install" Property="JettyDir" />
</Component>
- <Component Id="RemoveProcRunDir" Guid="{687EFCD0-9B56-4086-84EB-33A3C74CFEE2}" Win64="no" Directory="TARGETDIR">
+ <Component Id="RemoveProcRunDir" Guid="{687EFCD0-9B56-4086-84EB-33A3C74CFEE2}" Directory="TARGETDIR" Bitness="always32">
<RegistryValue Id="RemoveProcRunDir" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="ProcRunDir" Value="TRUE" Type="string" KeyPath="yes" />
<util:RemoveFolderEx On="install" Property="ProcRunDir" />
</Component>
diff --git a/src/main/wix/Jetty-Gui.wxs b/src/main/wix/Jetty-Gui.wxs
index 6b879cb..21ad36b 100644
--- a/src/main/wix/Jetty-Gui.wxs
+++ b/src/main/wix/Jetty-Gui.wxs
@@ -1,6 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- Licensed under the Apache License, Version 2.0 (the "License");
+<!-- Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
@@ -12,7 +10,7 @@
implied. See the License for the specific language governing
permissions and limitations under the License. -->
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" >
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
<!-- This file controls the dispaying of the GUI dialogs (both WiX and custom) -->
<Fragment>
<WixVariable Id="WixUILicenseRtf" Value="$(var.ProjectDir)\license.rtf" />
@@ -62,50 +60,34 @@
<TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />
<!-- Events (from Orca\ControlEvent and from light"s complaints) -->
- <Publish Dialog="BrowseDlg" Control="OK" Event="DoAction" Value="WixUIValidatePath" Order="3">1</Publish>
- <Publish Dialog="BrowseDlg" Control="OK" Event="SpawnDialog" Value="InvalidDirDlg" Order="4">
- WIXUI_INSTALLDIR_VALID<>"1"
- </Publish>
-
- <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="InstallJetty">
- LicenseAccepted = "1"
- </Publish>
-
- <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
- <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
-
- <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>
-
- <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">
- (NOT Installed) AND (NOT ALREADYINSTALLED)
- </Publish>
- <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="InstallJetty">
- (NOT Installed) AND ALREADYINSTALLED
- </Publish>
- <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">
- Installed AND PATCH
- </Publish>
-
- <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return">1</Publish>
- <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
- <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>
- <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">
- Installed AND PATCH
- </Publish>
- <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="InstallJetty">
- NOT Installed OR PATCH
- </Publish>
- <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg">
- Installed AND NOT PATCH
- </Publish>
-
- <ProgressText Action="QtSetACEConf">Setting the ACLs on the idp conf directory</ProgressText>
- <ProgressText Action="QtSetACECreds">Setting the ACLs on the idp credentials directory</ProgressText>
- <ProgressText Action="QtSetACELogs">Setting the ACLs on the idp logs directory</ProgressText>
- <ProgressText Action="QtSetACEJettyLog">Setting the ACLs on the jetty-base logs directory</ProgressText>
- <ProgressText Action="QtSetACEJettyTmp">Setting the ACLs on the jetty-base tmp directory</ProgressText>
- <ProgressText Action="QtSetACEJettyStart">Setting the ACLs on the jetty-base start.d directory</ProgressText>
- <ProgressText Action="WixRemoveFoldrrsEx">Cleaning out previous install</ProgressText>
+ <Publish Dialog="BrowseDlg" Control="OK" Event="DoAction" Value="WixUIValidatePath_$(sys.BUILDARCHSHORT)" Order="3" />
+ <Publish Dialog="BrowseDlg" Control="OK" Event="SpawnDialog" Value="InvalidDirDlg" Order="4" Condition="WIXUI_INSTALLDIR_VALID<>"1"" />
+
+ <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="InstallJetty" Condition="LicenseAccepted = "1"" />
+
+ <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg" />
+ <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg" />
+
+ <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg" />
+
+ <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg" Condition="(NOT Installed) AND (NOT ALREADYINSTALLED)" />
+ <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="InstallJetty" Condition="(NOT Installed) AND ALREADYINSTALLED" />
+ <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" Condition="Installed AND PATCH" />
+
+ <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" />
+ <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" />
+ <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg" />
+ <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Condition="Installed AND PATCH" />
+ <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="InstallJetty" Condition="NOT Installed OR PATCH" />
+ <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Condition="Installed AND NOT PATCH" />
+
+ <ProgressText Action="QtSetACEConf" Message="Setting the ACLs on the idp conf directory" />
+ <ProgressText Action="QtSetACECreds" Message="Setting the ACLs on the idp credentials directory" />
+ <ProgressText Action="QtSetACELogs" Message="Setting the ACLs on the idp logs directory" />
+ <ProgressText Action="QtSetACEJettyLog" Message="Setting the ACLs on the jetty-base logs directory" />
+ <ProgressText Action="QtSetACEJettyTmp" Message="Setting the ACLs on the jetty-base tmp directory" />
+ <ProgressText Action="QtSetACEJettyStart" Message="Setting the ACLs on the jetty-base start.d directory" />
+ <ProgressText Action="WixRemoveFoldrrsEx" Message="Cleaning out previous install" />
</UI>
</Fragment>
diff --git a/src/main/wix/Jetty-InstallDlg.wxs b/src/main/wix/Jetty-InstallDlg.wxs
index afda9fa..8464b71 100644
--- a/src/main/wix/Jetty-InstallDlg.wxs
+++ b/src/main/wix/Jetty-InstallDlg.wxs
@@ -1,6 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- Licensed under the Apache License, Version 2.0 (the "License");
+<!-- Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
@@ -12,7 +10,7 @@
implied. See the License for the specific language governing
permissions and limitations under the License. -->
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
<Fragment>
<UI>
<!-- This Dialog sets up INSTALL_JETTYD_USER, JETTYD_USER, JETTYD_DOMAIN, JETTYD_PASSWORD -->
@@ -24,51 +22,29 @@
<Control Id="TopDetailed" Type="Text" X="25" Y="24" Width="320" Height="12" Text="Please Select whether to run as a captive user" Transparent="yes" />
<Control Id="TopLine" Type="Line" X="0" Y="44" Width="370" Height="1" />
- <Control Id="InstallJettyD" Type="CheckBox" X="25" Y="52" Height="20" Width="60"
- Property="INSTALL_JETTYD_USER" CheckBoxValue="TRUE" Text="Run As &User"/>
+ <Control Id="InstallJettyD" Type="CheckBox" X="25" Y="52" Height="20" Width="60" Property="INSTALL_JETTYD_USER" CheckBoxValue="TRUE" Text="Run As &User" />
- <Control Id="DescriptionLine3A" Type="Text" X="25" Y="76" Height="20" Width="60" Text="User Domain">
- <Condition Action="hide">NOT INSTALL_JETTYD_USER</Condition>
- <Condition Action="show">INSTALL_JETTYD_USER</Condition>
- </Control>
- <Control Id="Shibd_Domain" Type="Edit" X="85" Y="74" Height="17" Width="80"
- Property="JETTYD_DOMAIN" Text="[JETTYD_DOMAIN]">
- <Condition Action="hide">NOT INSTALL_JETTYD_USER</Condition>
- <Condition Action="show">INSTALL_JETTYD_USER</Condition>
- </Control>
+ <Control Id="DescriptionLine3A" Type="Text" X="25" Y="76" Height="20" Width="60" Text="User Domain" HideCondition="NOT INSTALL_JETTYD_USER" ShowCondition="INSTALL_JETTYD_USER" />
+ <Control Id="Shibd_Domain" Type="Edit" X="85" Y="74" Height="17" Width="80" Property="JETTYD_DOMAIN" Text="[JETTYD_DOMAIN]" HideCondition="NOT INSTALL_JETTYD_USER" ShowCondition="INSTALL_JETTYD_USER" />
- <Control Id="DescriptionLine3B" Type="Text" X="25" Y="96" Height="20" Width="60" Text="Username">
- <Condition Action="hide">NOT INSTALL_JETTYD_USER</Condition>
- <Condition Action="show">INSTALL_JETTYD_USER</Condition>
- </Control>
- <Control Id="Shibd_User" Type="Edit" X="85" Y="94" Height="17" Width="80"
- Property="JETTYD_USER" Text="[JETTYD_USER]">
- <Condition Action="hide">NOT INSTALL_JETTYD_USER</Condition>
- <Condition Action="show">INSTALL_JETTYD_USER</Condition>
- </Control>
+ <Control Id="DescriptionLine3B" Type="Text" X="25" Y="96" Height="20" Width="60" Text="Username" HideCondition="NOT INSTALL_JETTYD_USER" ShowCondition="INSTALL_JETTYD_USER" />
+ <Control Id="Shibd_User" Type="Edit" X="85" Y="94" Height="17" Width="80" Property="JETTYD_USER" Text="[JETTYD_USER]" HideCondition="NOT INSTALL_JETTYD_USER" ShowCondition="INSTALL_JETTYD_USER" />
- <Control Id="DescriptionLine3C" Type="Text" X="25" Y="116" Height="20" Width="60" Text="Password">
- <Condition Action="hide">NOT INSTALL_JETTYD_USER</Condition>
- <Condition Action="show">INSTALL_JETTYD_USER</Condition>
- </Control>
- <Control Id="Shibd_Pass" Type="Edit" X="85" Y="114" Height="17" Width="80"
- Property="JETTYD_PASSWORD" Password="yes">
- <Condition Action="hide">NOT INSTALL_JETTYD_USER</Condition>
- <Condition Action="show">INSTALL_JETTYD_USER</Condition>
- </Control>
+ <Control Id="DescriptionLine3C" Type="Text" X="25" Y="116" Height="20" Width="60" Text="Password" HideCondition="NOT INSTALL_JETTYD_USER" ShowCondition="INSTALL_JETTYD_USER" />
+ <Control Id="Shibd_Pass" Type="Edit" X="85" Y="114" Height="17" Width="80" Property="JETTYD_PASSWORD" Password="yes" HideCondition="NOT INSTALL_JETTYD_USER" ShowCondition="INSTALL_JETTYD_USER" />
<!-- Stuff at the bottom: line, Back,Next, [space] Cancel -->
<Control Id="BottomLine" Type="Line" X="0" Y="234" Width="370" Height="1" />
<Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="&Back">
- <Publish Event="NewDialog" Value="LicenseAgreementDlg">1</Publish>
+ <Publish Event="NewDialog" Value="LicenseAgreementDlg" />
</Control>
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Text="&Next" Default="yes">
- <Publish Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
+ <Publish Event="NewDialog" Value="VerifyReadyDlg" />
</Control>
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Text="&Cancel" Cancel="yes">
- <Publish Event="SpawnDialog" Value="CancelDlg">1</Publish>
+ <Publish Event="SpawnDialog" Value="CancelDlg" />
</Control>
</Dialog>
diff --git a/src/main/wix/Jetty-Main.wxs b/src/main/wix/Jetty-Main.wxs
index e0c15d4..9cf354c 100644
--- a/src/main/wix/Jetty-Main.wxs
+++ b/src/main/wix/Jetty-Main.wxs
@@ -1,6 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- Licensed under the Apache License, Version 2.0 (the "License");
+<!-- Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
@@ -14,17 +12,15 @@
<?define UpgradeUUID="FB2B7404-37B2-4CE5-8E2E-EEB53F9FF472"?>
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
- <Product Id="*" Name="Jetty Installer for the Shibboleth IdP V5" Language="1033" Version="11.0.13.0" Manufacturer="The Shibboleth Consortium" UpgradeCode="$(var.UpgradeUUID)">
- <Package InstallerVersion="310" Compressed="yes" InstallScope="perMachine" Platform="x64" Description="Jetty Installation for Shibboleth IdP V5"
- Manufacturer="The Shibboleth Consortium" />
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
+ <Package Name="Jetty Installer for the Shibboleth IdP V5" Language="1033" Version="11.0.13.0" Manufacturer="The Shibboleth Consortium" UpgradeCode="$(var.UpgradeUUID)" InstallerVersion="310"><SummaryInformation Description="Jetty Installation for Shibboleth IdP V5" Manufacturer="The Shibboleth Consortium" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." AllowSameVersionUpgrades="yes" Schedule="afterInstallInitialize" />
<MediaTemplate EmbedCab="yes" />
- <Condition Message="C run time libraray not installed">UCRTBASE_DLL</Condition>
- <Condition Message="JDK not installed">JAVA_EXECUTABLE</Condition>
- <Condition Message="IDP not installed">IDP_INSTALLDIR</Condition>
+ <Launch Condition="UCRTBASE_DLL" Message="C run time libraray not installed" />
+ <Launch Condition="JAVA_EXECUTABLE" Message="JDK not installed" />
+ <Launch Condition="IDP_INSTALLDIR" Message="IDP not installed" />
<!-- Information for the properties page of the msi -->
@@ -44,45 +40,26 @@
<ComponentRef Id="Icon" />
</Feature>
- <Directory Id="TARGETDIR" Name="SourceDir">
- <Directory Id="CommonAppDataFolder">
- <Directory Id="ProgramDataShib" Name="Shibboleth">
- <Directory Id="IDPDISTDIR" Name="IdP"/>
- </Directory>
- </Directory>
- <Directory Id="ProgramFilesFolder">
- <Directory Id="SHIBBOLETHDIR" Name="Shibboleth" >
- <Directory Id="JETTYROOT" Name="Jetty" />
- <Directory Id="PROCRUNROOT" Name="ProcRun" />
- </Directory>
- </Directory>
- <Directory Id="IDP_INSTALLDIR">
- <Directory Id="JettyBaseFolder" Name="jetty-base">
- <Directory Id="StartDotD" Name="start.d" />
- <Directory Id="JettyLogs" Name="logs" />
- <Directory Id="JettyTmp" Name="tmp" />
- </Directory>
- </Directory>
- </Directory>
+
- <Component Id="Icon" Guid="{C866B1EC-63E2-4379-BAA3-4D3936AE1BEC}" Directory="IDP_INSTALLDIR" Win64="yes">
+ <Component Id="Icon" Guid="{C866B1EC-63E2-4379-BAA3-4D3936AE1BEC}" Directory="IDP_INSTALLDIR" Bitness="always64">
<RegistryValue Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Uninstall\[ProductCode]" Name="DisplayIcon" Value="[IDP_INSTALLDIR]\shib.ico,0" Type="string" />
</Component>
<CustomAction Id="SetFinalizeJetty" Property="QtFinalizeJetty" Value=""[JAVA_EXECUTABLE]" -cp "[IDPDISTDIR]\bin\lib\*;[IDPDISTDIR]\webapp\WEB-INF\lib\*" -Didp.home="[JAVA_IDP_HOME]" net.shibboleth.idp.installer.impl.FinalizeJettyBase" />
<CustomAction Id="RunFinalizeJetty" Directory="SHIBBOLETHDIR" ExeCommand="[QtFinalizeJetty]" Execute="deferred" Impersonate="no" />
- <CustomAction Id="QtFinalizeJetty" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+ <CustomAction Id="QtFinalizeJetty" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
<InstallExecuteSequence>
- <Custom Action="SetFinalizeJetty" After="InstallFiles">(NOT Installed)</Custom>
- <Custom Action="RunFinalizeJetty" After="SetFinalizeJetty">(NOT Installed) AND DEBUG_INSTALL</Custom>
- <Custom Action="QtFinalizeJetty" After="RunFinalizeJetty">(NOT Installed) AND (NOT DEBUG_INSTALL)</Custom>
+ <Custom Action="SetFinalizeJetty" After="InstallFiles" Condition="(NOT Installed)" />
+ <Custom Action="RunFinalizeJetty" After="SetFinalizeJetty" Condition="(NOT Installed) AND DEBUG_INSTALL" />
+ <Custom Action="QtFinalizeJetty" After="RunFinalizeJetty" Condition="(NOT Installed) AND (NOT DEBUG_INSTALL)" />
</InstallExecuteSequence>
<!-- Parameters: See also Jetty-User -->
<Property Id="ALWAYS_START_SERVICE" Value="TRUE" Secure="yes" />
<Property Id="JAVA_JVMMX" Secure="yes">
- <RegistrySearch Id="JvmMx" Root="HKLM" Key="SOFTWARE\Apache Software Foundation\Procrun 2.0\shibd_idp\Parameters\Java" Name="JvmMx" Type="raw" Win64="no" />
+ <RegistrySearch Id="JvmMx" Root="HKLM" Key="SOFTWARE\Apache Software Foundation\Procrun 2.0\shibd_idp\Parameters\Java" Name="JvmMx" Type="raw" Bitness="always32" />
</Property>
<!-- Environment -->
@@ -100,7 +77,7 @@
</Property>
<Property Id="IDP_INSTALLDIR" Secure="yes">
- <RegistrySearch Id="OldInstallDir" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="InstallDir" Type="directory" Win64="no" />
+ <RegistrySearch Id="OldInstallDir" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="InstallDir" Type="directory" Bitness="always32" />
</Property>
<Upgrade Id="$(var.UpgradeUUID)">
@@ -109,5 +86,24 @@
<UIRef Id="JettyInstallUI" />
- </Product>
+
+ <StandardDirectory Id="CommonAppDataFolder">
+ <Directory Id="ProgramDataShib" Name="Shibboleth">
+ <Directory Id="IDPDISTDIR" Name="IdP" />
+ </Directory>
+ </StandardDirectory>
+ <StandardDirectory Id="ProgramFilesFolder">
+ <Directory Id="SHIBBOLETHDIR" Name="Shibboleth">
+ <Directory Id="JETTYROOT" Name="Jetty" />
+ <Directory Id="PROCRUNROOT" Name="ProcRun" />
+ </Directory>
+ </StandardDirectory>
+ <Directory Id="IDP_INSTALLDIR">
+ <Directory Id="JettyBaseFolder" Name="jetty-base">
+ <Directory Id="StartDotD" Name="start.d" />
+ <Directory Id="JettyLogs" Name="logs" />
+ <Directory Id="JettyTmp" Name="tmp" />
+ </Directory>
+ </Directory>
+ </Package>
</Wix>
diff --git a/src/main/wix/Jetty-Procrun.wxs b/src/main/wix/Jetty-Procrun.wxs
index 5c43b9c..247d521 100644
--- a/src/main/wix/Jetty-Procrun.wxs
+++ b/src/main/wix/Jetty-Procrun.wxs
@@ -1,6 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<!-- Licensed under the Apache License, Version 2.0 (the "License");
+<!-- Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
@@ -12,8 +10,7 @@
implied. See the License for the specific language governing
permissions and limitations under the License. -->
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:fw="http://schemas.microsoft.com/wix/FirewallExtension"
- xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:fw="http://wixtoolset.org/schemas/v4/wxs/firewall" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
<?define ServiceStart="auto"?>
<?define ServiceName="shibd_idp"?>
<Fragment>
@@ -51,24 +48,22 @@
<!-- Install the service. -->
- <Component Id="procrun_service" Directory="dir64" Guid="{D5390673-A3C7-423A-975E-BB2684513ED0}">
- <Condition>VersionNT64 And Not Intel64</Condition>
+ <Component Id="procrun_service" Directory="dir64" Guid="{D5390673-A3C7-423A-975E-BB2684513ED0}" Condition="VersionNT64 And Not Intel64">
+
<File Id="file_procrun_AMD64_service" KeyPath="yes" Source="$(var.ProcrunSrc)\amd64\prunsrv.exe" Name="$(var.ServiceName).exe" />
- <ServiceInstall Id="ServiceX64" Name="$(var.ServiceName)" DisplayName="Shibboleth IdP Daemon" Description="Runs the Jetty Container"
- Arguments="service $(var.ServiceName)" Type="ownProcess" Start="$(var.ServiceStart)" ErrorControl="ignore"
- Account="[SERVICE_USER]" Password="[JETTYD_PASSWORD]">
- <util:ServiceConfig FirstFailureActionType="none" SecondFailureActionType="none" ThirdFailureActionType="none"/>
+ <ServiceInstall Id="ServiceX64" Name="$(var.ServiceName)" DisplayName="Shibboleth IdP Daemon" Description="Runs the Jetty Container" Arguments="service $(var.ServiceName)" Type="ownProcess" Start="$(var.ServiceStart)" ErrorControl="ignore" Account="[SERVICE_USER]" Password="[JETTYD_PASSWORD]">
+ <util:ServiceConfig FirstFailureActionType="none" SecondFailureActionType="none" ThirdFailureActionType="none" />
</ServiceInstall>
</Component>
- <Component Id="procrun_Firewall" Directory="dir64" Guid="{305B9114-289B-4D9B-B616-73082D659067}" KeyPath="yes">
- <Condition>NOT NO_FIREWALL And VersionNT64 And Not Intel64</Condition>
+ <Component Id="procrun_Firewall" Directory="dir64" Guid="{305B9114-289B-4D9B-B616-73082D659067}" KeyPath="yes" Condition="NOT NO_FIREWALL And VersionNT64 And Not Intel64">
+
<fw:FirewallException Id="Win64Shibd_idp" Program="[#file_procrun_AMD64_service]" Name="Win64Shibd_idp" Description="The Shibboleth IdP Daemon" Protocol="tcp" Scope="any" />
</Component>
<!-- Configure the service -->
- <Component Id="ServiceParameters" Directory="PROCRUNROOT" Guid="{EBC566D8-0B22-4625-98E8-C8506A6892B5}" KeyPath="yes">
- <Condition>NOT Installed</Condition>
+ <Component Id="ServiceParameters" Directory="PROCRUNROOT" Guid="{EBC566D8-0B22-4625-98E8-C8506A6892B5}" KeyPath="yes" Condition="NOT Installed">
+
<!-- Start component here - that way if the start fails the user will be prompted and things will continue with the service declared. -->
<RegistryKey ForceDeleteOnUninstall="yes" ForceCreateOnInstall="yes" Key="SYSTEM\CurrentControlSet\services\$(var.ServiceName)\Parameters" Root="HKLM">
<Permission User="Administrators" GenericAll="yes" />
@@ -81,15 +76,15 @@
<Component Id="StartParameters" Directory="PROCRUNROOT" Guid="{E9C5155E-F44D-4A10-9CEB-5CC2D683CD8A}" KeyPath="yes">
<!-- ForceDeleteOnUninstall stops us accumulating Stop keys -->
<RegistryKey ForceDeleteOnUninstall="yes" ForceCreateOnInstall="yes" Key="SOFTWARE\Apache Software Foundation\Procrun 2.0\$(var.ServiceName)\Parameters\Start" Root="HKLM">
- <RegistryValue Name="Class" Value="org.eclipse.jetty.start.Main" Type="string"/>
- <RegistryValue Name="Mode" Value="jvm" Type="string"/>
+ <RegistryValue Name="Class" Value="org.eclipse.jetty.start.Main" Type="string" />
+ <RegistryValue Name="Mode" Value="jvm" Type="string" />
<RegistryValue Name="Params" Type="multiString" Action="append">
- <MultiStringValue>STOP.PORT=8963</MultiStringValue>
- <MultiStringValue>STOP.Key=[JETTY_PASS]</MultiStringValue>
- <MultiStringValue>jetty.base=[IDP_INSTALLDIR]\jetty-base</MultiStringValue>
- <MultiStringValue>jetty.logging.dir=[IDP_INSTALLDIR]\jetty-base\logs</MultiStringValue>
+ <MultiStringValue Value="STOP.PORT=8963" />
+ <MultiStringValue Value="STOP.Key=[JETTY_PASS]" />
+ <MultiStringValue Value="jetty.base=[IDP_INSTALLDIR]\jetty-base" />
+ <MultiStringValue Value="jetty.logging.dir=[IDP_INSTALLDIR]\jetty-base\logs" />
</RegistryValue>
- <RegistryValue Name="WorkingPath" Type="string" Value="[IDP_INSTALLDIR]\jetty-base\"/>
+ <RegistryValue Name="WorkingPath" Type="string" Value="[IDP_INSTALLDIR]\jetty-base\" />
<Permission User="Administrators" GenericAll="yes" />
<Permission User="SYSTEM" GenericAll="yes" />
<Permission Domain="[JETTYD_DOMAIN]" User="[PERMISSION_USER]" GenericRead="yes" GenericExecute="yes" Read="yes" />
@@ -97,16 +92,16 @@
</Component>
<Component Id="StopParameters" Directory="PROCRUNROOT" Guid="{F436CF79-B29E-45D7-B0D0-7181949CB9B3}" KeyPath="yes">
<RegistryKey ForceDeleteOnUninstall="yes" ForceCreateOnInstall="yes" Key="SOFTWARE\Apache Software Foundation\Procrun 2.0\$(var.ServiceName)\Parameters\Stop" Root="HKLM">
- <RegistryValue Name="Class" Value="org.eclipse.jetty.start.Main" Type="string"/>
- <RegistryValue Name="Mode" Value="jvm" Type="string"/>
+ <RegistryValue Name="Class" Value="org.eclipse.jetty.start.Main" Type="string" />
+ <RegistryValue Name="Mode" Value="jvm" Type="string" />
<RegistryValue Name="Params" Type="multiString" Action="append">
- <MultiStringValue>--stop</MultiStringValue>
- <MultiStringValue>STOP.PORT=8963</MultiStringValue>
- <MultiStringValue>STOP.Key=[JETTY_PASS]</MultiStringValue>
- <MultiStringValue>jetty.base=[IDP_INSTALLDIR]\jetty-base</MultiStringValue>
- <MultiStringValue>jetty.logging.dir=[IDP_INSTALLDIR]\jetty-base\logs</MultiStringValue>
+ <MultiStringValue Value="--stop" />
+ <MultiStringValue Value="STOP.PORT=8963" />
+ <MultiStringValue Value="STOP.Key=[JETTY_PASS]" />
+ <MultiStringValue Value="jetty.base=[IDP_INSTALLDIR]\jetty-base" />
+ <MultiStringValue Value="jetty.logging.dir=[IDP_INSTALLDIR]\jetty-base\logs" />
</RegistryValue>
- <RegistryValue Name="WorkingPath" Type="string" Value="[IDP_INSTALLDIR]\jetty-base\"/>
+ <RegistryValue Name="WorkingPath" Type="string" Value="[IDP_INSTALLDIR]\jetty-base\" />
<Permission User="Administrators" GenericAll="yes" />
<Permission User="SYSTEM" GenericAll="yes" />
<Permission Domain="[JETTYD_DOMAIN]" User="[PERMISSION_USER]" GenericRead="yes" GenericExecute="yes" Read="yes" />
@@ -128,11 +123,11 @@
<RegistryValue Name="Jvm" Value="auto" Type="string" />
<RegistryValue Name="Classpath" Value="[JETTYROOT]\start.jar" Type="string" />
<RegistryValue Name="Options" Type="multiString">
- <MultiStringValue>-Didp.home=[JAVA_IDP_HOME]</MultiStringValue>
- <MultiStringValue>-Djdk.tls.ephemeralDHKeySize=2048</MultiStringValue>
- <MultiStringValue>-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.Slf4jLog</MultiStringValue>
- <MultiStringValue>-Djava.io.tmpdir=[JAVA_IDP_HOME]/jetty-base/tmp</MultiStringValue>
- <MultiStringValue>-XX:+UseG1GC</MultiStringValue>
+ <MultiStringValue Value="-Didp.home=[JAVA_IDP_HOME]" />
+ <MultiStringValue Value="-Djdk.tls.ephemeralDHKeySize=2048" />
+ <MultiStringValue Value="-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.Slf4jLog" />
+ <MultiStringValue Value="-Djava.io.tmpdir=[JAVA_IDP_HOME]/jetty-base/tmp" />
+ <MultiStringValue Value="-XX:+UseG1GC" />
</RegistryValue>
<RegistryValue Name="JvmMx" Value="[JAVA_JVMMX]" Type="string">
<!-- Its an integer, but we added the # -->
@@ -145,16 +140,16 @@
</ComponentGroup>
<Binary Id="PropertyWorkSrc" SourceFile="scripts\jetty_script.vbs" />
- <CustomAction Id="PropertyWork" BinaryKey="PropertyWorkSrc" VBScriptCall="" Execute="immediate" />
+ <CustomAction Id="PropertyWork" VBScriptCall="" Execute="immediate" BinaryRef="PropertyWorkSrc" />
<CustomAction Id="SetJavaJvmMx" Property="JAVA_JVMMX" Value="#2048" />
<InstallExecuteSequence>
<!-- Do/Do Not not start service -->
- <StartServices>(ALWAYS_START_SERVICE = "TRUE")</StartServices>
+ <StartServices Condition="(ALWAYS_START_SERVICE = "TRUE")" />
<!-- Setup JAVA_IDP_HOME before we use it -->
<Custom Action="PropertyWork" After="AppSearch" />
<!-- Preserve Jetty parms -->
- <Custom Action="SetJavaJvmMx" After="AppSearch">(NOT Installed) AND (NOT JAVA_JVMMX)</Custom>
+ <Custom Action="SetJavaJvmMx" After="AppSearch" Condition="(NOT Installed) AND (NOT JAVA_JVMMX)" />
</InstallExecuteSequence>
diff --git a/src/main/wix/Jetty-User.wxs b/src/main/wix/Jetty-User.wxs
index d0084bb..38395ea 100644
--- a/src/main/wix/Jetty-User.wxs
+++ b/src/main/wix/Jetty-User.wxs
@@ -1,6 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<!-- Licensed under the Apache License, Version 2.0 (the "License");
+<!-- Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
@@ -12,8 +10,7 @@
implied. See the License for the specific language governing
permissions and limitations under the License. -->
-<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:fw="http://schemas.microsoft.com/wix/FirewallExtension"
- xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
<!-- User management for a dedicate process.
Input Properties- Created by the GUI.
@@ -44,26 +41,18 @@
used in icacls
-->
- <Fragment>
-
- <!-- Restore saved settings -->
+ <Fragment><!-- Restore saved settings -->
<Property Id="OLD_JETTYD_USER" Secure="yes">
- <RegistrySearch Id="OldJettydUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydUser" Type="raw" Win64="no" />
+ <RegistrySearch Id="OldJettydUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydUser" Type="raw" Bitness="always32" />
</Property>
<Property Id="OLD_JETTYD_DOMAIN" Secure="yes">
- <RegistrySearch Id="OldJettydDomain" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydDomain" Type="raw" Win64="no" />
+ <RegistrySearch Id="OldJettydDomain" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydDomain" Type="raw" Bitness="always32" />
</Property>
<Property Id="OLD_INSTALL_JETTYD_USER" Secure="yes">
- <RegistrySearch Id="OldInstallJettydUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="InstallJettydUser" Type="raw" Win64="no" />
+ <RegistrySearch Id="OldInstallJettydUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="InstallJettydUser" Type="raw" Bitness="always32" />
</Property>
<!-- Save settings -->
- <DirectoryRef Id="TARGETDIR">
- <Component Id="SaveUserInfo" Guid="{E1E006C0-37D4-438B-97D0-64E1A089DCE8}" Win64="no">
- <RegistryValue Id="targetRegShibUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydUser" Value="[JETTYD_USER]" Type="string" />
- <RegistryValue Id="targetRegShibDomain" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydDomain" Value="[JETTYD_DOMAIN]" Type="string" />
- <RegistryValue Id="targetRegInstallShibUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="InstallJettydUser" Value="[INSTALL_JETTYD_USER]" Type="string" />
- </Component>
- </DirectoryRef>
+
<!-- Set up work properties for GUI -->
<CustomAction Id="InheritJettydUser" Property="JETTYD_USER" Value="[OLD_JETTYD_USER]" />
@@ -73,28 +62,28 @@
<CustomAction Id="SetInstallJettydUser" Property="INSTALL_JETTYD_USER" Value="TRUE" />
<InstallUISequence>
- <Custom Action="InheritJettydUser" After="AppSearch">OLD_JETTYD_USER AND NOT JETTYD_USER</Custom>
- <Custom Action="InheritJettydDomain" After="AppSearch">OLD_JETTYD_DOMAIN AND NOT JETTYD_DOMAIN</Custom>
- <Custom Action="SetJettydDomain" After="AppSearch">NOT OLD_JETTYD_DOMAIN AND NOT JETTYD_DOMAIN</Custom>
- <Custom Action="InheritInstallJettydUser" After="InheritJettydUser">OLD_INSTALL_JETTYD_USER AND NOT JETTYD_USER</Custom>
- <Custom Action="SetInstallJettydUser" After="InheritJettydUser">JETTYD_USER</Custom>
+ <Custom Action="InheritJettydUser" After="AppSearch" Condition="OLD_JETTYD_USER AND NOT JETTYD_USER" />
+ <Custom Action="InheritJettydDomain" After="AppSearch" Condition="OLD_JETTYD_DOMAIN AND NOT JETTYD_DOMAIN" />
+ <Custom Action="SetJettydDomain" After="AppSearch" Condition="NOT OLD_JETTYD_DOMAIN AND NOT JETTYD_DOMAIN" />
+ <Custom Action="InheritInstallJettydUser" After="InheritJettydUser" Condition="OLD_INSTALL_JETTYD_USER AND NOT JETTYD_USER" />
+ <Custom Action="SetInstallJettydUser" After="InheritJettydUser" Condition="JETTYD_USER" />
</InstallUISequence>
<!-- Set up work properties for the installer -->
- <CustomAction Id="PermissionUserSpecified" Property="PERMISSION_USER" Value="[JETTYD_USER]"/>
- <CustomAction Id="PermissionUserDefault" Property="PERMISSION_USER" Value="Administrators"/>
- <CustomAction Id="DomainDefault" Property="JETTYD_DOMAIN" Value=""/>
- <CustomAction Id="ServiceUser" Property="SERVICE_USER" Value="[JETTYD_DOMAIN]\[JETTYD_USER]"/>
- <CustomAction Id="AceUserDomain" Property="ACE_USER" Value="[JETTYD_DOMAIN]\[PERMISSION_USER]"/>
- <CustomAction Id="AceUserNoDomain" Property="ACE_USER" Value="[PERMISSION_USER]"/>
+ <CustomAction Id="PermissionUserSpecified" Property="PERMISSION_USER" Value="[JETTYD_USER]" />
+ <CustomAction Id="PermissionUserDefault" Property="PERMISSION_USER" Value="Administrators" />
+ <CustomAction Id="DomainDefault" Property="JETTYD_DOMAIN" Value="" />
+ <CustomAction Id="ServiceUser" Property="SERVICE_USER" Value="[JETTYD_DOMAIN]\[JETTYD_USER]" />
+ <CustomAction Id="AceUserDomain" Property="ACE_USER" Value="[JETTYD_DOMAIN]\[PERMISSION_USER]" />
+ <CustomAction Id="AceUserNoDomain" Property="ACE_USER" Value="[PERMISSION_USER]" />
<InstallExecuteSequence>
- <Custom Action="PermissionUserSpecified" Before="DomainDefault">INSTALL_JETTYD_USER</Custom>
- <Custom Action="PermissionUserDefault" Before="DomainDefault">NOT INSTALL_JETTYD_USER</Custom>
- <Custom Action="DomainDefault" Before="AceUserDomain">NOT INSTALL_JETTYD_USER</Custom>
- <Custom Action="ServiceUser" After="DomainDefault">INSTALL_JETTYD_USER</Custom>
- <Custom Action="AceUserDomain" Before="AceUserNoDomain">JETTYD_DOMAIN</Custom>
- <Custom Action="AceUserNoDomain" Before="CreateFolders">NOT JETTYD_DOMAIN</Custom>
+ <Custom Action="PermissionUserSpecified" Before="DomainDefault" Condition="INSTALL_JETTYD_USER" />
+ <Custom Action="PermissionUserDefault" Before="DomainDefault" Condition="NOT INSTALL_JETTYD_USER" />
+ <Custom Action="DomainDefault" Before="AceUserDomain" Condition="NOT INSTALL_JETTYD_USER" />
+ <Custom Action="ServiceUser" After="DomainDefault" Condition="INSTALL_JETTYD_USER" />
+ <Custom Action="AceUserDomain" Before="AceUserNoDomain" Condition="JETTYD_DOMAIN" />
+ <Custom Action="AceUserNoDomain" Before="CreateFolders" Condition="NOT JETTYD_DOMAIN" />
</InstallExecuteSequence>
<!-- Actions to set acls
@@ -107,71 +96,77 @@
icacls "C:\Program Files (x86)\Shibboleth\IdP\conf" /setowner administrators /t /inheritance:r /grant SYSTEM:F Administrators:F Administrators:(GR,RD,X)
-->
- <CustomAction Id="SetIcaclsVerb" Property="IcaclsVerb" Value=""c:\Windows\System32\icacls.exe""/>
- <CustomAction Id="SetIcaclsPostFiles" Property="IcaclsPostFiles" Value="/t /inheritance:r /grant:r SYSTEM:F Administrators:F"/>
- <CustomAction Id="SetIcaclsPostDirs" Property="IcaclsPostDirs" Value="/t /inheritance:r /grant:r SYSTEM:(CI)(OI)(F) Administrators:(CI)(OI)(F)"/>
+ <CustomAction Id="SetIcaclsVerb" Property="IcaclsVerb" Value=""c:\Windows\System32\icacls.exe"" />
+ <CustomAction Id="SetIcaclsPostFiles" Property="IcaclsPostFiles" Value="/t /inheritance:r /grant:r SYSTEM:F Administrators:F" />
+ <CustomAction Id="SetIcaclsPostDirs" Property="IcaclsPostDirs" Value="/t /inheritance:r /grant:r SYSTEM:(CI)(OI)(F) Administrators:(CI)(OI)(F)" />
<!-- conf -->
- <CustomAction Id="SetACEIdpWithout" Property="QtSetACEIdP" Value=""[IDP_INSTALLDIR]\bin\setacl.bat""/>
- <CustomAction Id="SetACEIdpWith" Property="QtSetACEIdP" Value=""[IDP_INSTALLDIR]\bin\setacl.bat" [ACE_USER]"/>
- <CustomAction Id="QtSetACEIdP" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+ <CustomAction Id="SetACEIdpWithout" Property="QtSetACEIdP" Value=""[IDP_INSTALLDIR]\bin\setacl.bat"" />
+ <CustomAction Id="SetACEIdpWith" Property="QtSetACEIdP" Value=""[IDP_INSTALLDIR]\bin\setacl.bat" [ACE_USER]" />
+ <CustomAction Id="QtSetACEIdP" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
<!-- Jetty tmp -->
- <CustomAction Id="SetACEJettyTmpFiles" Property="QtSetACEJettyTmpFiles" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\tmp" [IcaclsPostFiles] [ACE_USER]:F"/>
- <CustomAction Id="SetACEJettyTmpDirs" Property="QtSetACEJettyTmpDirs" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\tmp" [IcaclsPostDirs] [ACE_USER]:(CI)(OI)(F)"/>
- <CustomAction Id="QtSetACEJettyTmpFiles" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
- <CustomAction Id="QtSetACEJettyTmpDirs" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+ <CustomAction Id="SetACEJettyTmpFiles" Property="QtSetACEJettyTmpFiles" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\tmp" [IcaclsPostFiles] [ACE_USER]:F" />
+ <CustomAction Id="SetACEJettyTmpDirs" Property="QtSetACEJettyTmpDirs" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\tmp" [IcaclsPostDirs] [ACE_USER]:(CI)(OI)(F)" />
+ <CustomAction Id="QtSetACEJettyTmpFiles" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+ <CustomAction Id="QtSetACEJettyTmpDirs" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
<!-- Jetty logs -->
<CustomAction Id="SetACEJettyLogsFiles" Property="QtSetACEJettyLogsFiles" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\logs" [IcaclsPostFiles] [ACE_USER]:F" />
<CustomAction Id="SetACEJettyLogsDirs" Property="QtSetACEJettyLogsDirs" Value="[IcaclsVerb] "[IDP_INSTALLDIR]\jetty-base\logs" [IcaclsPostDirs] [ACE_USER]:(CI)(OI)(F)" />
- <CustomAction Id="QtSetACEJettyLogsFiles" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
- <CustomAction Id="QtSetACEJettyLogsDirs" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+ <CustomAction Id="QtSetACEJettyLogsFiles" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+ <CustomAction Id="QtSetACEJettyLogsDirs" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
<!-- Procmon Logs -->
<CustomAction Id="SetACEProcrunLogOwner" Property="QtSetACEProcrunLogOwner" Value="[IcaclsVerb] "[SHIBBOLETHDIR]ProcRun\log" /t /setowner Administrators" />
<CustomAction Id="SetACEProcrunLogFiles" Property="QtSetACEProcrunLogFiles" Value="[IcaclsVerb] "[SHIBBOLETHDIR]ProcRun\log" [IcaclsPostFiles] [ACE_USER]:F" />
<CustomAction Id="SetACEProcrunLogDirs" Property="QtSetACEProcrunLogDirs" Value="[IcaclsVerb] "[SHIBBOLETHDIR]ProcRun\log" [IcaclsPostDirs] [ACE_USER]:(CI)(OI)(F)" />
- <CustomAction Id="QtSetACEProcrunLogOwner" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
- <CustomAction Id="QtSetACEProcrunLogFiles" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
- <CustomAction Id="QtSetACEProcrunLogDirs" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Impersonate="no" />
+ <CustomAction Id="QtSetACEProcrunLogOwner" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+ <CustomAction Id="QtSetACEProcrunLogFiles" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
+ <CustomAction Id="QtSetACEProcrunLogDirs" DllEntry="WixQuietExec" Execute="deferred" Impersonate="no" BinaryRef="Wix4UtilCA_X86" />
<InstallExecuteSequence>
<!-- Write the ACEs using the setacl command -->
- <Custom Action="SetIcaclsPostDirs" Before="SetIcaclsPostFiles"/>
- <Custom Action="SetIcaclsPostFiles" Before="SetIcaclsVerb"/>
- <Custom Action="SetIcaclsVerb" Before="InstallFiles"/>
+ <Custom Action="SetIcaclsPostDirs" Before="SetIcaclsPostFiles" />
+ <Custom Action="SetIcaclsPostFiles" Before="SetIcaclsVerb" />
+ <Custom Action="SetIcaclsVerb" Before="InstallFiles" />
<!-- Do the ACLS on the Shib install tree BEFORE we install the files
That way the install will inherit the protections -->
- <Custom Action="SetACEIdpWith" Before="QtSetACEIdP">INSTALL_JETTYD_USER</Custom>
- <Custom Action="SetACEIdpWithout" Before="QtSetACEIdP">NOT INSTALL_JETTYD_USER</Custom>
- <Custom Action="QtSetACEIdP" After="QtFinalizeJetty"/>
+ <Custom Action="SetACEIdpWith" Before="QtSetACEIdP" Condition="INSTALL_JETTYD_USER" />
+ <Custom Action="SetACEIdpWithout" Before="QtSetACEIdP" Condition="NOT INSTALL_JETTYD_USER" />
+ <Custom Action="QtSetACEIdP" After="QtFinalizeJetty" />
<!-- Write the ACLS on the jetty-base, and procrun install tree.
Do this AFTER we install the files, That way the install will inherit the protections -->
<!-- jetty-base/tmp, files then dirs -->
- <Custom Action="SetACEJettyTmpFiles" After="SetIcaclsVerb"/>
- <Custom Action="SetACEJettyTmpDirs" After="SetIcaclsVerb"/>
+ <Custom Action="SetACEJettyTmpFiles" After="SetIcaclsVerb" />
+ <Custom Action="SetACEJettyTmpDirs" After="SetIcaclsVerb" />
- <Custom Action="QtSetACEJettyTmpFiles" After="QtSetACEIdP"/>
- <Custom Action="QtSetACEJettyTmpDirs" After="QtSetACEJettyTmpFiles"/>
+ <Custom Action="QtSetACEJettyTmpFiles" After="QtSetACEIdP" />
+ <Custom Action="QtSetACEJettyTmpDirs" After="QtSetACEJettyTmpFiles" />
<!-- jetty-base/logs, files then dirs -->
- <Custom Action="SetACEJettyLogsFiles" After="SetIcaclsVerb"/>
- <Custom Action="SetACEJettyLogsDirs" After="SetIcaclsVerb"/>
- <Custom Action="QtSetACEJettyLogsFiles" After="QtSetACEIdP"/>
- <Custom Action="QtSetACEJettyLogsDirs" After="QtSetACEJettyLogsFiles"/>
+ <Custom Action="SetACEJettyLogsFiles" After="SetIcaclsVerb" />
+ <Custom Action="SetACEJettyLogsDirs" After="SetIcaclsVerb" />
+ <Custom Action="QtSetACEJettyLogsFiles" After="QtSetACEIdP" />
+ <Custom Action="QtSetACEJettyLogsDirs" After="QtSetACEJettyLogsFiles" />
<!-- Procrun: log -->
- <Custom Action="SetACEProcrunLogOwner" After="SetIcaclsVerb"/>
- <Custom Action="SetACEProcrunLogFiles" After="SetIcaclsVerb"/>
- <Custom Action="SetACEProcrunLogDirs" After="SetIcaclsVerb"/>
+ <Custom Action="SetACEProcrunLogOwner" After="SetIcaclsVerb" />
+ <Custom Action="SetACEProcrunLogFiles" After="SetIcaclsVerb" />
+ <Custom Action="SetACEProcrunLogDirs" After="SetIcaclsVerb" />
- <Custom Action="QtSetACEProcrunLogOwner" After="QtFinalizeJetty"/>
- <Custom Action="QtSetACEProcrunLogFiles" After="QtSetACEProcrunLogOwner"/>
- <Custom Action="QtSetACEProcrunLogDirs" After="QtSetACEProcrunLogFiles"/>
+ <Custom Action="QtSetACEProcrunLogOwner" After="QtFinalizeJetty" />
+ <Custom Action="QtSetACEProcrunLogFiles" After="QtSetACEProcrunLogOwner" />
+ <Custom Action="QtSetACEProcrunLogDirs" After="QtSetACEProcrunLogFiles" />
</InstallExecuteSequence>
- </Fragment>
+
+ <Component Id="SaveUserInfo" Guid="{E1E006C0-37D4-438B-97D0-64E1A089DCE8}" Directory="TARGETDIR" Bitness="always32">
+ <RegistryValue Id="targetRegShibUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydUser" Value="[JETTYD_USER]" Type="string" />
+ <RegistryValue Id="targetRegShibDomain" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="JettydDomain" Value="[JETTYD_DOMAIN]" Type="string" />
+ <RegistryValue Id="targetRegInstallShibUser" Root="HKLM" Key="SOFTWARE\Shibboleth\IdP" Name="InstallJettydUser" Value="[INSTALL_JETTYD_USER]" Type="string" />
+ </Component>
+ </Fragment>
</Wix>
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list