Bug 1859597 - Part2: add buildid to full and stub installer telemetry r=nalexander

Differential Revision: https://phabricator.services.mozilla.com/D223765
This commit is contained in:
Eric Chen 2024-11-06 17:23:47 +00:00
parent 877faf01af
commit 16b158b792
6 changed files with 22 additions and 7 deletions

View File

@ -61,6 +61,7 @@ $(CONFIG_DIR)/setup.exe::
$(INSTALL) $(addprefix $(srcdir)/,$(INSTALLER_FILES)) $(CONFIG_DIR)
$(INSTALL) $(addprefix $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/,$(BRANDING_FILES)) $(CONFIG_DIR)
$(call py_action,preprocessor defines.nsi,-Fsubstitution $(DEFINES) $(ACDEFINES) \
-DTOPOBJDIR=$(topobjdir) \
$(srcdir)/nsis/defines.nsi.in -o $(CONFIG_DIR)/defines.nsi)
$(PYTHON3) $(topsrcdir)/toolkit/mozapps/installer/windows/nsis/preprocess-locale.py \
--preprocess-locale $(topsrcdir) \

View File

@ -1,4 +1,6 @@
#filter substitution
#include @TOPOBJDIR@/buildid.h
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
@ -25,6 +27,7 @@
!define AppVersion "@APP_VERSION@"
!define GREVersion @MOZILLA_VERSION@
!define AB_CD "@AB_CD@"
!define MOZ_BUILDID "@MOZ_BUILDID@"
!define FileMainEXE "@MOZ_APP_NAME@.exe"
!define PrivateBrowsingEXE "private_browsing.exe"

View File

@ -68,6 +68,7 @@ Var EndFinishPhaseTickCount
Var DistributionID
Var DistributionVersion
Var WindowsUBR
Var StubBuildID
Var InitialInstallRequirementsCode
Var ExistingProfile
@ -1061,6 +1062,9 @@ Function SendPing
StrCpy $WindowsUBR "-1" ; Assign -1 if an error occured during registry read
${EndIf}
; Capture the stub installer build ID
StrCpy $StubBuildID ${MOZ_BUILDID}
; Whether installed into the default installation directory
${GetLongPath} "$INSTDIR" $R7
${GetLongPath} "$InitialInstallDir" $R8
@ -1172,14 +1176,15 @@ Function SendPing
$\nDid profile cleanup = $CheckboxCleanupProfile \
$\nDistribution ID = $DistributionID \
$\nDistribution Version = $DistributionVersion \
$\nWindows UBR = $WindowsUBR"
$\nWindows UBR = $WindowsUBR \
$\nStub Installer Build ID = $StubBuildID"
; The following will exit the installer
SetAutoClose true
StrCpy $R9 "2"
Call RelativeGotoPage
!else
${StartTimer} ${DownloadIntervalMS} OnPing
InetBgDL::Get "${BaseURLStubPing}/${StubURLVersion}${StubURLVersionAppend}/${Channel}/${UpdateChannel}/${AB_CD}/$R0/$R1/$5/$6/$7/$8/$9/$ExitCode/$FirefoxLaunchCode/$DownloadRetryCount/$DownloadedBytes/$DownloadSizeBytes/$IntroPhaseSeconds/$OptionsPhaseSeconds/$0/$1/$DownloadFirstTransferSeconds/$2/$3/$4/$InitialInstallRequirementsCode/$OpenedDownloadPage/$ExistingProfile/$ExistingVersion/$ExistingBuildID/$R5/$R6/$R7/$R8/$R2/$R3/$DownloadServerIP/$PostSigningData/$ProfileCleanupPromptType/$CheckboxCleanupProfile/$DistributionID/$DistributionVersion/$WindowsUBR" \
InetBgDL::Get "${BaseURLStubPing}/${StubURLVersion}${StubURLVersionAppend}/${Channel}/${UpdateChannel}/${AB_CD}/$R0/$R1/$5/$6/$7/$8/$9/$ExitCode/$FirefoxLaunchCode/$DownloadRetryCount/$DownloadedBytes/$DownloadSizeBytes/$IntroPhaseSeconds/$OptionsPhaseSeconds/$0/$1/$DownloadFirstTransferSeconds/$2/$3/$4/$InitialInstallRequirementsCode/$OpenedDownloadPage/$ExistingProfile/$ExistingVersion/$ExistingBuildID/$R5/$R6/$R7/$R8/$R2/$R3/$DownloadServerIP/$PostSigningData/$ProfileCleanupPromptType/$CheckboxCleanupProfile/$DistributionID/$DistributionVersion/$WindowsUBR/$StubBuildID" \
"$PLUGINSDIR\_temp" /END
!endif
${Else}

View File

@ -202,16 +202,17 @@ class DesktopSingleLocale(LocalesMixin, AutomationMixin, VCSMixin, BaseScript):
self._run_tooltool()
self._copy_mozconfig()
self._mach_configure()
self._run_make_in_config_dir()
self._make_export()
self.make_wget_en_US()
self.make_unpack_en_US()
def _run_make_in_config_dir(self):
def _make_export(self):
"""this step creates nsinstall, needed my make_wget_en_US()"""
dirs = self.query_abs_dirs()
config_dir = os.path.join(dirs["abs_obj_dir"], "config")
env = self.query_bootstrap_env()
return self._make(target=["export"], cwd=config_dir, env=env)
return self._make(
target=["pre-export", "export"], cwd=dirs["abs_obj_dir"], env=env
)
def _copy_mozconfig(self):
"""copies the mozconfig file into abs_src_dir/.mozconfig

View File

@ -48,7 +48,7 @@ update_channel (both)
Value of MOZ_UPDATE_CHANNEL for the installer build; should generally be the same as build_channel
version, build_id (both)
Version number and Build ID of the installed product, from ``application.ini``. This is **not** the version of the installer itself.
Version number and Build ID of the installed product, from ``application.ini``. This is **not** the version of the installer itself, see stub_build_id.
stub: 0 if the installation failed
@ -211,6 +211,9 @@ ping_version (stub)
silent (full)
True if the install was silent (see :ref:`Full Installer Configuration`)
stub_build_id (stub)
Build ID of the stub installer.
windows_ubr (both)
The Windows Update Build Revision of the installation device.

View File

@ -102,6 +102,7 @@ $(CONFIG_DIR)/helper.exe: $(HELPER_DEPS)
$(INSTALL) $(addprefix $(srcdir)/,$(INSTALLER_FILES)) $(CONFIG_DIR)
$(INSTALL) $(addprefix $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/,$(BRANDING_FILES)) $(CONFIG_DIR)
$(call py_action,preprocessor defines.nsi,-Fsubstitution $(DEFINES) $(ACDEFINES) \
-DTOPOBJDIR=$(topobjdir) \
$(srcdir)/nsis/defines.nsi.in -o $(CONFIG_DIR)/defines.nsi)
$(PYTHON3) $(topsrcdir)/toolkit/mozapps/installer/windows/nsis/preprocess-locale.py \
--preprocess-locale $(topsrcdir) \
@ -121,6 +122,7 @@ maintenanceservice_installer::
$(INSTALL) $(addprefix $(srcdir)/,$(INSTALLER_FILES)) $(CONFIG_DIR)
$(INSTALL) $(addprefix $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/,$(BRANDING_FILES)) $(CONFIG_DIR)
$(call py_action,preprocessor defines.nsi,-Fsubstitution $(DEFINES) $(ACDEFINES) \
-DTOPOBJDIR=$(topobjdir) \
$(srcdir)/nsis/defines.nsi.in -o $(CONFIG_DIR)/defines.nsi)
$(PYTHON3) $(topsrcdir)/toolkit/mozapps/installer/windows/nsis/preprocess-locale.py \
--preprocess-locale $(topsrcdir) \