MDEV-4458 - Windows installer does not launch upgrade wizard anymore, even if there are upgradable instances (i.e windows service of lower MariaDB/MySQL version)
The main reason for he error is misplaced ADD_DIRECTORY in top-level CMakeLists.txt. ADD_DIRECTORY(win/packaging) was places before win/upgrade_wizard, and MSI was not able to detect that upgrade wizard was built, and thus excluded upgrade wizard entirely.
This commit is contained in:
parent
2ffc7d73b9
commit
8d75f11a67
@ -329,8 +329,8 @@ INCLUDE(cmake/abi_check.cmake)
|
|||||||
INCLUDE(cmake/tags.cmake)
|
INCLUDE(cmake/tags.cmake)
|
||||||
|
|
||||||
IF(WIN32)
|
IF(WIN32)
|
||||||
ADD_SUBDIRECTORY(win/packaging)
|
|
||||||
ADD_SUBDIRECTORY(win/upgrade_wizard)
|
ADD_SUBDIRECTORY(win/upgrade_wizard)
|
||||||
|
ADD_SUBDIRECTORY(win/packaging)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
CONFIGURE_FILE(config.h.cmake ${CMAKE_BINARY_DIR}/include/my_config.h)
|
CONFIGURE_FILE(config.h.cmake ${CMAKE_BINARY_DIR}/include/my_config.h)
|
||||||
|
@ -895,7 +895,7 @@ extern "C" UINT __stdcall CheckServiceUpgrades(MSIHANDLE hInstall)
|
|||||||
Only look for services that have mysqld.exe outside of the current
|
Only look for services that have mysqld.exe outside of the current
|
||||||
installation directory.
|
installation directory.
|
||||||
*/
|
*/
|
||||||
if(strstr(props.mysqld_exe,installDir) == 0)
|
if(installDir[0] == 0 || strstr(props.mysqld_exe,installDir) == 0)
|
||||||
{
|
{
|
||||||
WcaLog(LOGMSG_STANDARD, "found service %S, major=%d, minor=%d",
|
WcaLog(LOGMSG_STANDARD, "found service %S, major=%d, minor=%d",
|
||||||
info[i].lpServiceName, props.version_major, props.version_minor);
|
info[i].lpServiceName, props.version_major, props.version_minor);
|
||||||
|
@ -151,6 +151,9 @@
|
|||||||
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Text="&Next">
|
<Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Text="&Next">
|
||||||
<Publish Event="Remove" Value="DBInstance">CreateOrUpgradeChoice = "Upgrade" </Publish>
|
<Publish Event="Remove" Value="DBInstance">CreateOrUpgradeChoice = "Upgrade" </Publish>
|
||||||
<Publish Event="AddLocal" Value="DBInstance">CreateOrUpgradeChoice = "Create"</Publish>
|
<Publish Event="AddLocal" Value="DBInstance">CreateOrUpgradeChoice = "Create"</Publish>
|
||||||
|
<Publish Property="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value="[NonExistentProperty]">CreateOrUpgradeChoice = "Create"</Publish>
|
||||||
|
<Publish Property="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="[NonExistentProperty]">CreateOrUpgradeChoice = "Create"</Publish>
|
||||||
|
<Publish Property="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value="1">CreateOrUpgradeChoice = "Upgrade"</Publish>
|
||||||
<Publish Event="NewDialog" Value="CustomizeDlg">1</Publish>
|
<Publish Event="NewDialog" Value="CustomizeDlg">1</Publish>
|
||||||
</Control>
|
</Control>
|
||||||
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="Cancel">
|
<Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="Cancel">
|
||||||
@ -823,7 +826,7 @@
|
|||||||
<Property
|
<Property
|
||||||
Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT"
|
Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT"
|
||||||
Value="Launch wizard to upgrade existing MariaDB or MySQL services." />
|
Value="Launch wizard to upgrade existing MariaDB or MySQL services." />
|
||||||
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value="1"/>
|
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value="0"/>
|
||||||
<Property Id="WixShellExecTarget" Value="[#F.bin.mysql_upgrade_wizard.exe]" />
|
<Property Id="WixShellExecTarget" Value="[#F.bin.mysql_upgrade_wizard.exe]" />
|
||||||
<CustomAction Id="LaunchApplication"
|
<CustomAction Id="LaunchApplication"
|
||||||
BinaryKey="WixCA"
|
BinaryKey="WixCA"
|
||||||
@ -835,16 +838,16 @@
|
|||||||
Execute="immediate" />
|
Execute="immediate" />
|
||||||
<InstallUISequence>
|
<InstallUISequence>
|
||||||
<Custom Action="CheckServiceUpgrades" After="CostFinalize">
|
<Custom Action="CheckServiceUpgrades" After="CostFinalize">
|
||||||
$C.bin.mysql_upgrade_wizard.exe = 3 AND NOT Installed
|
$C.bin.mysql_upgrade_wizard.exe = 3 AND NOT Installed AND NOT OLDERVERSIONBEINGUPGRADED
|
||||||
</Custom>
|
</Custom>
|
||||||
</InstallUISequence>
|
</InstallUISequence>
|
||||||
<SetProperty Before="ExecuteAction" Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT"
|
<SetProperty Before="ExecuteAction" Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT"
|
||||||
Sequence="ui" Value="[NonExistentProperty]">
|
Sequence="ui" Value="[NonExistentProperty]">
|
||||||
<![CDATA[($C.bin.mysql_upgrade_wizard.exe <> 3) AND NOT Installed]]>
|
<![CDATA[($C.bin.mysql_upgrade_wizard.exe <> 3) AND NOT Installed OR OLDERVERSIONBEINGUPGRADED]]>
|
||||||
</SetProperty>
|
</SetProperty>
|
||||||
<SetProperty Before="ExecuteAction" Id="WIXUI_EXITDIALOGOPTIONALCHECKBOX"
|
<SetProperty Before="ExecuteAction" Id="WIXUI_EXITDIALOGOPTIONALCHECKBOX"
|
||||||
Sequence="ui" Value="[NonExistentProperty]">
|
Sequence="ui" Value="[NonExistentProperty]">
|
||||||
<![CDATA[($C.bin.mysql_upgrade_wizard.exe <> 3) AND NOT Installed]]>
|
<![CDATA[($C.bin.mysql_upgrade_wizard.exe <> 3) AND NOT Installed OR OLDERVERSIONBEINGUPGRADED]]>
|
||||||
</SetProperty>
|
</SetProperty>
|
||||||
|
|
||||||
<?endif ?> <!-- HaveUpgradeWizard -->
|
<?endif ?> <!-- HaveUpgradeWizard -->
|
||||||
|
Loading…
x
Reference in New Issue
Block a user