diff --git a/dotNetInstaller/XenCenterSetupBootstrapper.xml b/dotNetInstaller/XenCenterSetupBootstrapper.xml new file mode 100644 index 000000000..592ccd245 --- /dev/null +++ b/dotNetInstaller/XenCenterSetupBootstrapper.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dotNetInstaller/XenCenterSetupBootstrapper_l10n.xml b/dotNetInstaller/XenCenterSetupBootstrapper_l10n.xml new file mode 100644 index 000000000..ee7981291 --- /dev/null +++ b/dotNetInstaller/XenCenterSetupBootstrapper_l10n.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mk/xenadmin-build.sh b/mk/xenadmin-build.sh index bb4627bec..05751ee85 100644 --- a/mk/xenadmin-build.sh +++ b/mk/xenadmin-build.sh @@ -312,6 +312,24 @@ cd ${WIX} && wscript WiSubStg.vbs XenCenter.l10n.msi zh-tw.mst 1028 #sign again the combined msi because it seems the embedding breaks the signature cd ${WIX} && chmod a+rw XenCenter.l10n.msi && ${REPO}/sign.bat XenCenter.l10n.msi +#create bundle exe installers - msi installers embedded +DOTNETINST=${REPO}/dotNetInstaller +DOTNETINST_BIN='/cygdrive/c/Program Files/dotNetInstaller/Bin' +cp ${WIX}/outXenCenter/XenCenter.msi ${DOTNETINST} +cp ${WIX}/XenCenter.l10n.msi ${DOTNETINST} +cp "${DOTNETINST_BIN}"/* ${DOTNETINST} +cd ${DOTNETINST} && "${DOTNETINST}/InstallerLinker.exe" "/Output:XenCenterSetup.exe" "/Template:dotNetInstaller.exe" "/Configuration:XenCenterSetupBootstrapper.xml" "/e+" "/v+" +cd ${DOTNETINST} && "${DOTNETINST}/InstallerLinker.exe" "/Output:XenCenterSetup.l10n.exe" "/Template:dotNetInstaller.exe" "/Configuration:XenCenterSetupBootstrapper_l10n.xml" "/e+" "/v+" + +sign_files() +{ + for file in $1 + do + chmod a+rw ${file} && ${REPO}/sign.bat ${file} + done +} +sign_files "XenCenterSetup.exe XenCenterSetup.l10n.exe" + #create VNCCntrol installer sed -e "s/${WIX_INSTALLER_DEFAULT_GUID_VNCCONTROL}/${PRODUCT_GUID_VNCCONTROL}/g" \ -e "s/${WIX_INSTALLER_DEFAULT_VERSION}/${XC_PRODUCT_VERSION}/g" \ @@ -336,11 +354,11 @@ cd ${REPO}/CFUValidator/bin/ && tar -czf CFUValidator.tgz ./Release #collect output and extra files to the OUTPUT_DIR EN_CD_DIR=${OUTPUT_DIR}/CD_FILES.main/client_install mkdir_clean ${EN_CD_DIR} -cp ${WIX}/outXenCenter/XenCenter.msi ${EN_CD_DIR} +cp ${DOTNETINST}/XenCenterSetup.exe ${EN_CD_DIR} cp ${REPO}/XenAdmin/AppIcon.ico ${EN_CD_DIR}/XenCenter.ico L10N_CD_DIR=${OUTPUT_DIR}/client_install mkdir_clean ${L10N_CD_DIR} -cp ${WIX}/XenCenter.l10n.msi ${L10N_CD_DIR} +cp ${DOTNETINST}/XenCenterSetup.l10n.exe ${L10N_CD_DIR} cp ${WIX}/outVNCControl/VNCControl.msi ${OUTPUT_DIR}/VNCControl.msi cd ${REPO}/XenAdmin/TestResources && tar -cf ${OUTPUT_DIR}/XenCenterTestResources.tar * @@ -356,7 +374,7 @@ cp ${REPO}/XenAdmin/bin/Release/{XS56EFP1002,XS56E008,XS60E001,XS60E009}.xsupdat #create english iso files ISO_DIR=${SCRATCH_DIR}/iso-staging mkdir_clean ${ISO_DIR} -install -m 755 ${EN_CD_DIR}/XenCenter.msi ${ISO_DIR}/XenCenter.msi +install -m 755 ${EN_CD_DIR}/XenCenterSetup.exe ${ISO_DIR}/XenCenterSetup.exe cp ${REPO}/mk/ISO_files/* ${ISO_DIR} cp ${EN_CD_DIR}/XenCenter.ico ${ISO_DIR}/XenCenter.ico mkisofs -J -r -v -hfs -probe -publisher "${COMPANY_NAME_LEGAL}" -p "${COMPANY_NAME_LEGAL}" -V "XenCenter" -o "${OUTPUT_DIR}/XenCenter.iso" "${ISO_DIR}" @@ -365,7 +383,7 @@ mkisofs -J -r -v -hfs -probe -publisher "${COMPANY_NAME_LEGAL}" -p "${COMPANY_NA L10N_ISO_DIR=${SCRATCH_DIR}/l10n-iso-staging mkdir_clean ${L10N_ISO_DIR} # -o root -g root -install -m 755 ${L10N_CD_DIR}/XenCenter.l10n.msi ${L10N_ISO_DIR}/XenCenter.msi +install -m 755 ${L10N_CD_DIR}/XenCenter.l10n.exe ${L10N_ISO_DIR}/XenCenterSetup.exe cp ${REPO}/mk/ISO_files/* ${L10N_ISO_DIR} cp ${EN_CD_DIR}/XenCenter.ico ${L10N_ISO_DIR}/XenCenter.ico mkisofs -J -r -v -hfs -probe -publisher "${COMPANY_NAME_LEGAL}" -p "${COMPANY_NAME_LEGAL}" -V "XenCenter" -o "${OUTPUT_DIR}/XenCenter.l10n.iso" "${L10N_ISO_DIR}"