summaryrefslogtreecommitdiff
path: root/src/mongo/installer
diff options
context:
space:
mode:
authorNir Bar <nir.bar@panel-sw.co.il>2020-05-28 08:55:46 +0300
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-06-05 17:27:48 +0000
commita402944f3813927c1145163c36abe0e3c4a50dfa (patch)
tree96f8114fb78dde3fbf969a9071c883c29e70fb73 /src/mongo/installer
parent05a4404c65a2ceffa6e4a548ac0b403eee0aa993 (diff)
downloadmongo-a402944f3813927c1145163c36abe0e3c4a50dfa.tar.gz
SERVER-47257 Ensure back button on final MSI panel works correctly
Dump now deprecated "trim msi" functionality Signed-off-by: Andrew Morrow <acm@mongodb.com> Closes #1365
Diffstat (limited to 'src/mongo/installer')
-rw-r--r--src/mongo/installer/msi/SConscript27
-rw-r--r--src/mongo/installer/msi/wxs/UIFragment.wxs41
2 files changed, 49 insertions, 19 deletions
diff --git a/src/mongo/installer/msi/SConscript b/src/mongo/installer/msi/SConscript
index 7b54a8137ba..b23deba2240 100644
--- a/src/mongo/installer/msi/SConscript
+++ b/src/mongo/installer/msi/SConscript
@@ -146,7 +146,7 @@ env.Command(objects,
' $SOURCES')
#light: link .objs into an msi
-pre_msi = "$BUILD_DIR/msi/${SERVER_DIST_BASENAME}.pre.msi"
+msi = "$BUILD_DIR/msi/${SERVER_DIST_BASENAME}.msi"
# Suppress VC140_CRT_CRT.MSM Internal Consistency Errors
# ICE03 - Supress "String overflow"
@@ -158,33 +158,30 @@ pre_msi = "$BUILD_DIR/msi/${SERVER_DIST_BASENAME}.pre.msi"
# so this consistency check can be ignored.
# -- https://msdn.microsoft.com/en-us/library/windows/desktop/aa368954(v=vs.85).aspx
-pre_msi_cmd = env.Command(pre_msi,
+msi_cmd = env.Command(msi,
objects,
'"$WIXLIGHT" -out ${TARGET} -wx -cultures:null -sice:ICE82 -sice:ICE03 -sice:ICE30'
' -ext "$WIXUIEXT"'
' -ext "$WIXUTILEXT"'
' ${SOURCES}')
-env.NoCache(pre_msi_cmd)
+env.NoCache(msi_cmd)
# Generated Dependencies
-env.Depends(pre_msi_cmd, '$BUILD_DIR/mongo/mongo.exe')
-env.Depends(pre_msi_cmd, '$BUILD_DIR/mongo/mongod.exe')
-env.Depends(pre_msi_cmd, '$BUILD_DIR/mongo/mongos.exe')
-env.Depends(pre_msi_cmd, '$BUILD_DIR/mongo/installer/msi/ca/mongoca.dll')
-env.Depends(pre_msi_cmd, '$BUILD_DIR/mongo/installer/compass/Install-Compass.ps1')
+env.Depends(msi_cmd, '$BUILD_DIR/mongo/mongo.exe')
+env.Depends(msi_cmd, '$BUILD_DIR/mongo/mongod.exe')
+env.Depends(msi_cmd, '$BUILD_DIR/mongo/mongos.exe')
+env.Depends(msi_cmd, '$BUILD_DIR/mongo/installer/msi/ca/mongoca.dll')
+env.Depends(msi_cmd, '$BUILD_DIR/mongo/installer/compass/Install-Compass.ps1')
# Source Dependencies
-env.Depends(pre_msi_cmd, '#buildscripts/packaging/msi/mongod.yaml')
+env.Depends(msi_cmd, '#buildscripts/packaging/msi/mongod.yaml')
if 'enterprise' in env['MONGO_MODULES']:
- env.Depends(pre_msi_cmd, "#" + enterpriseToolBuildDir + "/mongodecrypt.exe")
- env.Depends(pre_msi_cmd, "#" + enterpriseToolBuildDir + "/mongoldap.exe")
- env.Depends(pre_msi_cmd, "#" + enterpriseToolBuildDir + "/mongocryptd.exe")
+ env.Depends(msi_cmd, "#" + enterpriseToolBuildDir + "/mongodecrypt.exe")
+ env.Depends(msi_cmd, "#" + enterpriseToolBuildDir + "/mongoldap.exe")
+ env.Depends(msi_cmd, "#" + enterpriseToolBuildDir + "/mongocryptd.exe")
msi = "$BUILD_DIR/msi/${SERVER_DIST_BASENAME}.msi"
-env.Command(msi,
- pre_msi,
- r'$PYTHON buildscripts\msitrim.py ${SOURCES} ${TARGET}')
env.AlwaysBuild(msi)
env.NoCache(msi)
diff --git a/src/mongo/installer/msi/wxs/UIFragment.wxs b/src/mongo/installer/msi/wxs/UIFragment.wxs
index 1ccbe3901bf..1f061ef4103 100644
--- a/src/mongo/installer/msi/wxs/UIFragment.wxs
+++ b/src/mongo/installer/msi/wxs/UIFragment.wxs
@@ -2,11 +2,44 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Fragment>
<UI Id="MongoWixUI">
- <!-- Base our MSI on the FeatureTree based Wix set, and add our custom dialog boxes -->
- <UIRef Id="WixUI_FeatureTree" />
+ <!-- Copy of relevant parts from WixUI_FeatureTree (https://github.com/wixtoolset/wix3/blob/develop/src/ext/UIExtension/wixlib/WixUI_FeatureTree.wxs), with our custom dialog boxes -->
+ <UIRef Id="WixUI_Common" />
+ <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
+ <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" />
+ <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />
- <Publish Event="NewDialog" Value="MongoSetupTypeDlg" Dialog="LicenseAgreementDlg" Control="Next">LicenseAccepted = "1"</Publish>
- <Publish Event="NewDialog" Value="MongoSetupTypeDlg" Dialog="CustomizeDlg" Control="Back">WixUI_InstallMode = "InstallCustom"</Publish>
+ <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
+ <Property Id="WixUI_Mode" Value="FeatureTree" />
+
+ <DialogRef Id="ErrorDlg" />
+ <DialogRef Id="FatalError" />
+ <DialogRef Id="FilesInUse" />
+ <DialogRef Id="MsiRMFilesInUse" />
+ <DialogRef Id="PrepareDlg" />
+ <DialogRef Id="ProgressDlg" />
+ <DialogRef Id="ResumeDlg" />
+ <DialogRef Id="UserExit" />
+
+ <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>
+
+ <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">NOT Installed</Publish>
+ <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg">Installed AND PATCH</Publish>
+
+ <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
+ <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="MongoSetupTypeDlg">LicenseAccepted = "1"</Publish>
+
+ <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="CompassDlg" Order="1">NOT Installed OR WixUI_InstallMode = "Change"</Publish>
+ <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg" Order="2">Installed AND NOT PATCH</Publish>
+ <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="3">Installed AND PATCH</Publish>
+
+ <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>
+
+ <Publish Dialog="MaintenanceTypeDlg" Control="ChangeButton" Event="NewDialog" Value="CustomizeDlg">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="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>
+
+ <Publish Event="NewDialog" Value="MongoSetupTypeDlg" Dialog="CustomizeDlg" Control="Back">WixUI_InstallMode = "InstallCustom"</Publish>
<Publish Event="NewDialog" Value="ServiceDlg" Dialog="CustomizeDlg" Control="Next">
<![CDATA[&Server = 3]]>
</Publish>