0
Commit Graph

249 Commits

Author SHA1 Message Date
Joshua Pawlicki
ef919592b0 Documentation: Add a bit about updater signing.
Bug: 365960975
Change-Id: I6be58b834e4572f7cddc7e549f637d25d7f8ede0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5967413
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1374138}
2024-10-25 21:15:18 +00:00
S. Ganesh
f42f08fc88 updater: document an example for importing new old updaters
Bug: 374217027
Change-Id: I0aa36bb18a56742246eaa166def3371409def1f7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5955710
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1372843}
2024-10-23 18:14:33 +00:00
S Ganesh
6df6c68ef7 Revert "[Gardening] Revert "updater: use the same ProgramFiles(x86) directory for both 32 and 64 bit""
This reverts commit 468c9d9096.

Reason for revert: Fixing the change to not break on ARM64.

Original change's description:
> [Gardening] Revert "updater: use the same ProgramFiles(x86) directory for both 32 and 64 bit"
>
> This reverts commit ba46ea5763.
>
> Note: PS2->PS3 contains additional changes that were necessary to
> resolve an unrelated merge conflict that came up in the mean time.
>
> Reason for revert: Consistent test failures on win11-arm64-rel, see
> https://ci.chromium.org/ui/p/chromium/builders/ci/win11-arm64-rel-tests/2761/overview for an example.
>
> Original change's description:
> > updater: use the same ProgramFiles(x86) directory for both 32 and 64 bit
> >
> > Low-Coverage-Reason: COVERAGE_UNDERREPORTED
> > Bug: 374217027
> > Change-Id: I816313c31fdc11c5215c1fae34f678f7652c4d1a
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941730
> > Auto-Submit: S Ganesh <ganesh@chromium.org>
> > Reviewed-by: Sorin Jianu <sorin@chromium.org>
> > Commit-Queue: S Ganesh <ganesh@chromium.org>
> > Cr-Commit-Position: refs/heads/main@{#1370733}
>
> Bug: 374217027, 374382498
> Change-Id: I1a4f4fe86d05cfbb8b5c90cc40dfd49a012d22fe
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5942702
> Owners-Override: Tanmoy Mollik <triploblastic@google.com>
> Reviewed-by: Tanmoy Mollik <triploblastic@google.com>
> Commit-Queue: Jan Keitel <jkeitel@google.com>
> Cr-Commit-Position: refs/heads/main@{#1371264}

Low-Coverage-Reason: COVERAGE_UNDERREPORTED
Bug: 374217027, 374382498
Change-Id: I70b3fec7d6632b6a362e304cfd6ebeb198cd92b8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5950984
Commit-Queue: S Ganesh <ganesh@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1371769}
2024-10-22 00:42:50 +00:00
Jan Keitel
468c9d9096 [Gardening] Revert "updater: use the same ProgramFiles(x86) directory for both 32 and 64 bit"
This reverts commit ba46ea5763.

Note: PS2->PS3 contains additional changes that were necessary to
resolve an unrelated merge conflict that came up in the mean time.

Reason for revert: Consistent test failures on win11-arm64-rel, see
https://ci.chromium.org/ui/p/chromium/builders/ci/win11-arm64-rel-tests/2761/overview for an example.

Original change's description:
> updater: use the same ProgramFiles(x86) directory for both 32 and 64 bit
>
> Low-Coverage-Reason: COVERAGE_UNDERREPORTED
> Bug: 374217027
> Change-Id: I816313c31fdc11c5215c1fae34f678f7652c4d1a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941730
> Auto-Submit: S Ganesh <ganesh@chromium.org>
> Reviewed-by: Sorin Jianu <sorin@chromium.org>
> Commit-Queue: S Ganesh <ganesh@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1370733}

Bug: 374217027, 374382498
Change-Id: I1a4f4fe86d05cfbb8b5c90cc40dfd49a012d22fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5942702
Owners-Override: Tanmoy Mollik <triploblastic@google.com>
Reviewed-by: Tanmoy Mollik <triploblastic@google.com>
Commit-Queue: Jan Keitel <jkeitel@google.com>
Cr-Commit-Position: refs/heads/main@{#1371264}
2024-10-21 09:39:19 +00:00
S. Ganesh
ba46ea5763 updater: use the same ProgramFiles(x86) directory for both 32 and 64 bit
Low-Coverage-Reason: COVERAGE_UNDERREPORTED
Bug: 374217027
Change-Id: I816313c31fdc11c5215c1fae34f678f7652c4d1a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941730
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370733}
2024-10-18 18:26:32 +00:00
S. Ganesh
55127b87a6 updater: Clarify InstallerResult as it relates to other InstallerXXX values
Low-Coverage-Reason: COVERAGE_UNDERREPORTED
Change-Id: Icc174269937f117541dcafba054df77816acc587
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5936179
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369603}
2024-10-16 20:25:51 +00:00
S. Ganesh
d6660af598 updater: Clarify the format for the AutoRunOnOSUpgrade app commands
Fixed: 373637908
Change-Id: I513a5eaef70b9baa2e2dbc6ab7359e558f000c0e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5935495
Commit-Queue: David Bienvenu <davidbienvenu@google.com>
Reviewed-by: David Bienvenu <davidbienvenu@google.com>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369158}
2024-10-16 02:51:17 +00:00
Xiaoling Bao
0b4a04230e Delete the misleading comment about the deprecation of MCX.
Change-Id: Id9d28e8e7f32da2b28ab9e86f74ff4c5de521b63
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5921993
Commit-Queue: S Ganesh <ganesh@chromium.org>
Commit-Queue: Xiaoling Bao <xiaolingbao@chromium.org>
Auto-Submit: Xiaoling Bao <xiaolingbao@chromium.org>
Reviewed-by: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1366377}
2024-10-09 19:32:13 +00:00
S. Ganesh
6019aec691 updater: fix UI title to say App Name Installer
Before this CL, the updater UI title would just say `Chromium Installer`
or `Google Installer` regardless of the app being installed.

With this CL, the updater UI title says `Google Chrome Installer` when
for instance installing Google Chrome for the branded case.

Fixed: 372353085
Change-Id: I7c716ec879688a2848a9e842425507545fd01480
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5918774
Commit-Queue: S Ganesh <ganesh@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1366362}
2024-10-09 19:20:21 +00:00
Allan Kerr
901b3fd477 Lookup Installed Version in the Clients Registry
If an installer is abandoned or an app is modified by an external source
the version in the updater prefs may be out of sync with the installed
version. To prevent these values from getting out of sync lookup the
product version in the `Clients` registry, and, if its a valid version,
override the version in the updater prefs.

This fix is not necessary on macOS because `LookupVersion` is already
implemented on macOS to lookup the version in the app's registered
plist.

Bug: 370543468
Change-Id: Ia39daf0f427adb763e2b1debcffcf358a639ab3c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5909796
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1365696}
2024-10-08 18:13:51 +00:00
Michael Herrmann
72cdc53a2a Add link to a tutorial to updater design_doc.md
Change-Id: I4f7d9f65ce26e1ed0f0eda293833f76b36e1039a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5913512
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1364983}
2024-10-07 16:34:36 +00:00
S. Ganesh
a5e853f9da updater: Fix multiple updater instances in services and task scheduler
With this CL, if the update check period is set to zero, the updater is
pre-qualified by registering a higher version of the qualification app.
This is because the qualification app update will not happen if the
update check period is set to zero.

Fixed: 365722093
Change-Id: I4116b91433d04a184d956b6e093150dba892ce9f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5901871
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1362979}
2024-10-02 12:53:42 +00:00
S. Ganesh
2415f9bb21 updater: use google-branded logo or blank logo based on branding
Bug: 40234383
Change-Id: I738510e462a3171d9ea0c96f8a353cd4c266d3ae
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5899653
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1362737}
2024-10-01 23:08:11 +00:00
Joshua Pawlicki
df62196726 Updater: Update functional spec eula docs to match that actual impl.
Change-Id: I4e0bcba59f7cb9077ec8d2e2f70920c6865aa795
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5899262
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1362591}
2024-10-01 19:07:06 +00:00
S. Ganesh
d0bbe258b9 updater: splash screen enhancements
* The splash screen is now a bit smaller, and shows an icon in addition
to the "Initialization..." text.
* The splash screen class is now in its own compilation unit.
* The functional spec has been updated to mention the splash screen.

Bug: 40234383
Change-Id: Ie352e60204d960ae5a228368cb7ac432f7871b84
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5893560
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1361318}
2024-09-27 19:23:10 +00:00
S. Ganesh
22700bbf25 updater: Add scripts to generate ADM group policy templates
This CL:
* generates and archives group policy ADM files within
`GoogleUpdateAdmx.zip` and `GoogleCloudManagementAdmx.zip` for
enterprise customers for Google-branded builds only.
* tests ADM template file generation with a reference `gold` file.
* adds information to the functional spec about the ADM templates.

Bug: 40212354
Change-Id: I58648d6fe2e89c26d391ad4bbb43e23ec880b12c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5852523
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1353898}
2024-09-11 13:15:25 +00:00
S. Ganesh
d7677eddf7 updater: preserve the log file in SystemTemp or %TMP% on uninstall
When the updater uninstalls itself, and there are no other versions of
the updater in existence for the scope, the updater will save a copy of
the final log file to `{SystemTemp/%TMP%}\updater.log`. If a log file
already exists, it is overwritten.

Low-Coverage-Reason: COVERAGE_UNDERREPORTED
Bug: 345289052
Change-Id: I4a4e1331f5b45ba5a2be2466e12e6e6b894134b8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5842617
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1352387}
2024-09-07 00:57:09 +00:00
Joshua Pawlicki
d38fd4953e Updater: document the most important build output.
Fixed: 40269445
Change-Id: I12c433237d5abf4c65aabb06eed44a0a8ac4eb12
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5837701
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1351496}
2024-09-05 16:46:46 +00:00
Noah Anderson
4ea9ab1450 Updater: Rename Last Update Check Error protocol fields for consistency.
This makes the names consistent with other fields used to report errors elsewhere in the protocol.

Also, propagate the protocol additions to the version 4 protocol.

Change-Id: I32511393f36150770974c8762764e375ad4d08ca
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5835647
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Noah Rose Ledesma <noahrose@google.com>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Noah Rose Ledesma <noahrose@google.com>
Auto-Submit: Noah Anderson <noahanderson@google.com>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Noah Anderson <noahanderson@google.com>
Cr-Commit-Position: refs/heads/main@{#1350933}
2024-09-04 18:04:01 +00:00
S. Ganesh
f99d61d50c updater: instructions to upload UI screenshots manually
Bug: 40285290
Change-Id: Id21fbec2d2ff84367e2d105cb6acb6de1516bfb3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5830009
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1350400}
2024-09-03 21:02:20 +00:00
Joshua Pawlicki
9d26a73880 Component Updater: Transmit updater's last update check outcome with US.
Updater: Log the last update check outcome in prefs.

Future work would improve how we instantiate UpdaterState to allow
testing that doesn't destroy prod updaters.

Bug: 341334315
Change-Id: I9f61b262ed8a1f3b812479695161d384eae0fad0
Low-Coverage-Reason: HARD_TO_TEST - Tests modify system state.
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5757352
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1348779}
2024-08-29 18:26:09 +00:00
James Decker
04ffe43e1b Proposal for new omaha protocol v4.0
The state of protocol_4.md in patchset 2 represents the
initial `protocol_3.1.md` file.

To see the proposed changes in protocol 4, please observe
the differences between patchset 2 and the newest
patchset.

(Note: I also found a few documentation bugs in
`protocol_3.1.md` file).

Change-Id: I031266c5f7c3f1a5a5e4f7f5626e73bb04e038cf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5555743
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: James Decker <deckerjames@google.com>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1347560}
2024-08-27 19:28:29 +00:00
Noah Rose Ledesma
2740abbaab Use lowercase strings for Linux install dir
On Linux it is customary to install software to directories with
lowercase names, e.g. "/opt/google" instead of "/opt/Google", as we have
been doing in O4.

This change breaks integration tests which expect old_updater to
populate files in the install directory (e.g. prefs). Such tests have
been disabled until we can roll a new binary.

Bug: 353540580
Change-Id: I6b38a0654c9513a5428049b1af1b5c90968e269f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5798586
Auto-Submit: Noah Rose Ledesma <noahrose@google.com>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Noah Rose Ledesma <noahrose@google.com>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1344226}
2024-08-20 16:52:11 +00:00
S. Ganesh
d1c4b0b7d5 updater: de-elevated metainstaller redux
This CL uses the Windows explorer token to run the child process using
`::CreateProcessWithTokenW`. The approach is adapted from the
[following article](https://learn.microsoft.com/en-us/archive/blogs/
aaron_margosis/
faq-how-do-i-start-a-program-as-the-desktop-user-from-an-elevated-app)
.

Low-Coverage-Reason: COVERAGE_UNDERREPORTED
Fixed: 355539751
Change-Id: Ib73adc02da8ce51e014cefc522d8657f830f41bd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5769821
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Xiaoling Bao <xiaolingbao@chromium.org>
Commit-Queue: Xiaoling Bao <xiaolingbao@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1339236}
2024-08-08 19:46:05 +00:00
Joshua Pawlicki
6c319392a6 Docs: Update some TODOs in updater docs.
Fixed: 356361157
Change-Id: Iadbd216923934028150bf92cdd5c177831e3890e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5770294
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1338703}
2024-08-07 21:54:59 +00:00
Joshua Pawlicki
a01af13152 update_client: Create a "download" operation.
Also fix up some issues in the protocol doc.

Bug: 353249967
Change-Id: I2fc8cd8a5bd5da9f90282f97569f13755724f49c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5707530
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1336700}
2024-08-02 17:55:47 +00:00
S. Ganesh
b9fda6a2d7 updater: document the de-elevation to medium IPC mechanism
This CL documents the de-elevation to medium IPC mechanism introduced in
crrev/1333597.

Bug: 355539751
Change-Id: I387bb93ee860c28b66479ec594e3c0acfbfd6b41
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5744313
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1333784}
2024-07-26 21:30:20 +00:00
S. Ganesh
dba3f73715 updater: reduce installer error overlaps with Windows/other error codes
To allow for the metainstaller process exit code to be meaningful, this
CL moves all metainstaller/updater error codes above 0xFFFF (65535) for
Windows only, which is the range of Windows error codes.

With this CL:
* Metainstaller error codes are in the 73000 range.
* Error codes funnelled through `update_client` are in the 74000 range.
* updater error codes are in the 75000 range.

Low-Coverage-Reason: HARD_TO_TEST
Fixed: b/40863154,b/352650305
Change-Id: I26c232b4cf19d15e52a8de444a0b8a6a8fc2c753
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5704279
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1327087}
2024-07-13 00:40:17 +00:00
S. Ganesh
9ab775d80d updater: Show meaningful messages on encountering metainstaller errors
This CL:
* provides a specific message when elevation is cancelled.
* Adds the EXE name to the title of the message box.
* adds more meaningful error messages instead of error codes for other
metainstaller errors.

Low-Coverage-Reason: HARD_TO_TEST
Bug: b/351062337
Change-Id: I099d5f271b1f55eec0e24202761d5c41a2ac0473
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5690196
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1325550}
2024-07-10 16:39:36 +00:00
S. Ganesh
2ea533ac83 updater: add information to the functional spec about the ADMX templates
Fixed: b/40212354
Change-Id: I404f8d752807421889bc04e24edf31bc51f407a4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5664298
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: Xiaoling Bao <xiaolingbao@chromium.org>
Reviewed-by: Xiaoling Bao <xiaolingbao@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1320558}
2024-06-27 19:22:31 +00:00
Xiaoling Bao
7604bdb227 Exclude qualification app from the global update-disable policy.
Bug: 348677136
Change-Id: Ic629c3fe8a19ca81c674767f76883357fcc56739
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5651702
Reviewed-by: S Ganesh <ganesh@chromium.org>
Commit-Queue: Xiaoling Bao <xiaolingbao@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1318867}
2024-06-24 23:27:51 +00:00
S. Ganesh
7266105011 updater: Fix functional spec, correct the msi standalone command line
I shortened the `--product_installer_data` because at one point that
line exceeded 80 characters, but that resulted in a json parameter that
Chrome setup did not recognize.

`--product_installer_data "%7B%22dis%22%3A%7B%22msi%22%3Atrue%7D%7D"`
Unescaped, is
`{"dis":{"msi":true}}`
But it should be
`{"distribution":{"msi":true}}`
which on the command line is
`--product_installer_data`
`"%7B%22distribution%22%3A%7B%22msi%22%3Atrue%7D%7D"`

Change-Id: I57c43e012ed85e02e19bcb0b9166d941d953b923
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5648264
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Commit-Queue: Noah Rose Ledesma <noahrose@google.com>
Reviewed-by: Noah Rose Ledesma <noahrose@google.com>
Cr-Commit-Position: refs/heads/main@{#1318033}
2024-06-21 17:34:02 +00:00
S. Ganesh
b98a07e01e updater: set/delete eulaaccepted in registry, backward compatibility
Omaha 3 sets the eulaaccepted value to 0 when the EULA has not been
accepted, and also deletes the eulaaccepted value in the registry at
`Google\Update` when the EULA has been accepted. Apps may rely on this
value to determine when the overall EULA has been accepted, so the
updater also now updates this value accordingly in this CL.

Fixed: b/347737726
Change-Id: I7c16f19ca1d56cc19ebaaf513bfdd715226280b5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5637855
Commit-Queue: S Ganesh <ganesh@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Reviewed-by: Xiaoling Bao <xiaolingbao@chromium.org>
Commit-Queue: Xiaoling Bao <xiaolingbao@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1316668}
2024-06-18 20:27:08 +00:00
S. Ganesh
f83ca12641 updater: update protocol 3.1 docs
This CL updates the protocol 3.1 documentation with the changes in
r1315365 and r1315429.

Bug: b/40259471
Change-Id: I4bfbe0c18b6f8474c633cdf3a8205bf9bb21fd4d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5633643
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1315446}
2024-06-14 21:37:57 +00:00
Joanna Wang
75ad014969 Move updater cipd paths to third_party/updater/*/cipd/.
Bug: b/345791740
Change-Id: I16730192b292cd0e1ddc1c0fc60eb15bf37f5c0c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5606980
Auto-Submit: Joanna Wang <jojwang@chromium.org>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Joanna Wang <jojwang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1313447}
2024-06-11 16:01:58 +00:00
S. Ganesh
954977e3ce updater: preserve the log file in %TMP% on uninstall
When the updater uninstalls itself, and there are no other versions of
the updater in existence for the scope, the updater will save a copy of
the final log file to `%TMP%\updater{guid}.log`.

Low-Coverage-Reason: COVERAGE_UNDERREPORTED
Fixed: b/345289052
Change-Id: I55019332002bf1245914bb8f4bfdcfad3434fd69
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5602161
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1311520}
2024-06-06 20:39:33 +00:00
Joshua Pawlicki
77422f828d Updater: Add icon, architecture support to msi_from_standalone.py.
Also return the path to the built MSI.
Also clean up some wix flags that are unused.
Also eliminate some OOP boilerplate.

Bug: 343192899
Change-Id: Iff5611e207c8d5008e01179fcc722ce36b005db9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5580591
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1307431}
2024-05-29 15:12:09 +00:00
Takuto Ikuta
7478af7280 docs: remove goma references
Bug: 41489832
Change-Id: I1dbbb744be749f314dea32d9cf01da0e4a9390ad
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5569801
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Richard Wang <richardwa@google.com>
Commit-Queue: Richard Wang <richardwa@google.com>
Cr-Commit-Position: refs/heads/main@{#1306295}
2024-05-27 07:23:19 +00:00
Joshua Pawlicki
f14af82da2 Updater: Set installsources for different modes of operation.
These install sources will be carried through to the event pings as
well.

Bug: b/339047023, b/338448485
Change-Id: I4358efb341c1651c7d8d7d3b976fa6df005df250
Low-Coverage-Reason: COVERAGE_UNDERREPORTED - coverage bots don't run updater_tests_system
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5538474
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1304610}
2024-05-22 19:37:11 +00:00
Xiaoling Bao
d721cfa206 Expose CloudPolicyOverridesPlatformPolicy via IPolicyStatus4.
Low-Coverage-Reason: HARD_TO_TEST COM interface change which just forward calls.

Bug: 341356216

Change-Id: I43fbe05c879afadd2552b43c458440593c2f7927
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5548442
Reviewed-by: S Ganesh <ganesh@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Xiaoling Bao <xiaolingbao@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1302933}
2024-05-18 00:19:54 +00:00
Adam Norberg
5f95144c9a Stub for Mac client library to provide access to updater features.
This library will avoid depending on other parts of Chromium; it's
intended for static linking into non-Chromium binaries that want to
package and use the Chromium updater. This CL implements almost none of
its features, defining only the bare object.

I underestimated the complexity of implementing this and I'm breaking
down a larger incomplete CL into smaller parts to start landing them
so they will be more manageable to review (and to fix).

Change-Id: I756bb5f47b041dc4f43aad0764c869198533ea4a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5502600
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Reviewed-by: Joshua Pawlicki <waffles@chromium.org>
Commit-Queue: Adam Norberg <norberg@google.com>
Cr-Commit-Position: refs/heads/main@{#1302137}
2024-05-16 19:07:41 +00:00
Takuto Ikuta
8b198d66a9 docs/updater: replace use_goma with use_remoteexec
goma is not supported now.

Original CL is https://crrev.com/c/5539111.

This CL was uploaded by git cl split.

R=xiaolingbao@chromium.org

Bug: 41489832
Change-Id: I693694280c76fb83db6ec77113939ee2fcecf7b1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5540813
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Junji Watanabe <jwata@google.com>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1301123}
2024-05-15 06:03:10 +00:00
Xiaoling Bao
36cf3e8db1 Parse enrollment token value from tagged value (Windows only).
Bug: 336829957
Change-Id: I85febfbb8324273046a9ba3b9f5b46aecacd5935
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5512685
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Xiaoling Bao <xiaolingbao@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1295902}
2024-05-03 01:55:21 +00:00
Alison Gale
770f3fce37 Migrate TODOs referencing old crbug IDs to the new issue tracker IDs
The canonical bug format is TODO(crbug.com/<id>). TODOs of the
following forms will all be migrated to the new format:

- TODO(crbug.com/<old id>)
- TODO(https://crbug.com/<old id>)
- TODO(crbug/<old id>)
- TODO(crbug/monorail/<old id>)
- TODO(<old id>)
- TODO(issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/u/1/issues/<old id>)
- TODO(bugs.chromium.org/<old id>)

Bug id mapping is sourced from go/chrome-on-buganizer-prod-issues.
See go/crbug-todo-migration for details.

#crbug-todo-migration

Bug: b/321899722
Change-Id: Ibc66b8c440e4bcdef414e77fef4d9874d2ea9951
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5493800
Auto-Submit: Alison Gale <agale@chromium.org>
Commit-Queue: Alison Gale <agale@chromium.org>
Reviewed-by: Peter Boström <pbos@chromium.org>
Owners-Override: Alison Gale <agale@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1293330}
2024-04-27 00:39:58 +00:00
Alison Gale
81f4f2c793 Migrate TODOs referencing old crbug IDs to the new issue tracker IDs
The canonical bug format is TODO(crbug.com/<id>). TODOs of the
following forms will all be migrated to the new format:

- TODO(crbug.com/<old id>)
- TODO(https://crbug.com/<old id>)
- TODO(crbug/<old id>)
- TODO(crbug/monorail/<old id>)
- TODO(<old id>)
- TODO(issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/u/1/issues/<old id>)
- TODO(bugs.chromium.org/<old id>)

Bug id mapping is sourced from go/chrome-on-buganizer-prod-issues.
See go/crbug-todo-migration for details.

#crbug-todo-migration

Bug: b/321899722
Change-Id: Iee14d10d544e9f0ec046117cc4ec8a55c427adc0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5469947
Reviewed-by: Darryl James <dljames@chromium.org>
Owners-Override: Alison Gale <agale@chromium.org>
Commit-Queue: Alison Gale <agale@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1290838}
2024-04-22 19:33:31 +00:00
Xiaoling Bao
0dc732fb85 Read enrollment token in REG_SZ format.
Enrollment token is provisioned as REG_SZ. Read as REG_BINARY fails.
Ignore the DM token that is not in the REG_BINARY format.

Bug: 40945094
Change-Id: I0878f5ed76874ae1b1d3493bc40e20ea04dad4a4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5460267
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Sorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1288500}
2024-04-17 04:15:30 +00:00
Joshua Pawlicki
5e84a1c182 Updater: Update the cleanup task to delete a window of old updaters.
Also remove some old temporary code in the cleanup task.
Also fix up some omissions/inaccuracies in the functional spec.

Fixed: b/40266781
Change-Id: Iac8cc1b2da6fa4e4b9834e5819efcef8182ecefe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5453240
Auto-Submit: Joshua Pawlicki <waffles@chromium.org>
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: Joshua Pawlicki <waffles@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1288363}
2024-04-16 22:40:52 +00:00
S. Ganesh
a27812cd93 Reland "updater: eliminate the --tag and the --runtime switches"
This is a reland of commit 0e4382ce23

Fixed the issue that caused the original revert in r1287592.

Original change's description:
> updater: eliminate the `--tag` and the `--runtime` switches
>
> * The `--tag` switch is redundant since `--install` takes a tag as well.
> * The `--runtime` switch is unused. Legacy `runtime` mode is specified
>   via the tag.
>
> Bug: 333957195
> Change-Id: Iea4672811e456e2bed71a6d8d8ae2bafd0c97d5a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5449915
> Commit-Queue: Sorin Jianu <sorin@chromium.org>
> Commit-Queue: S Ganesh <ganesh@chromium.org>
> Auto-Submit: S Ganesh <ganesh@chromium.org>
> Reviewed-by: Sorin Jianu <sorin@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1286829}

Bug: 333957195
Change-Id: I86f017cd7d74a938c0c31b0342449f31302b29b3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5454578
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1287661}
2024-04-15 21:58:00 +00:00
Alexander Bolodurin
365162ac09 Revert "updater: eliminate the --tag and the --runtime switches"
This reverts commit 0e4382ce23.

Reason for revert: failing updater_tests

Bug: 334703969

Original change's description:
> updater: eliminate the `--tag` and the `--runtime` switches
>
> * The `--tag` switch is redundant since `--install` takes a tag as well.
> * The `--runtime` switch is unused. Legacy `runtime` mode is specified
>   via the tag.
>
> Bug: 333957195
> Change-Id: Iea4672811e456e2bed71a6d8d8ae2bafd0c97d5a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5449915
> Commit-Queue: Sorin Jianu <sorin@chromium.org>
> Commit-Queue: S Ganesh <ganesh@chromium.org>
> Auto-Submit: S Ganesh <ganesh@chromium.org>
> Reviewed-by: Sorin Jianu <sorin@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1286829}

Bug: 333957195
Change-Id: If01919cb5bad06f8cb3cf7049e8795dfb7d887f2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5451890
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Alexander Bolodurin <alexbn@chromium.org>
Owners-Override: Alexander Bolodurin <alexbn@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1287136}
2024-04-15 03:37:49 +00:00
Sorin Jianu
c4b32a4199 updater: change the type of DM tokens in registry to REG_BINARY
This CL changes the DM storage code to read and write tokens as
REG_BINARY values in registry, for backward compatibility with
Chrome and previous versions of updaters.

Some future clean up would be nice in this module, which is not very
cohesive when accessing the registry: some parts of code use
base::win::RegKey, others use helper functions.

Bug: 40945094
Change-Id: I881acdca218b0d5cedb0f1dc790c6f2ad3702cfe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5449504
Reviewed-by: S Ganesh <ganesh@chromium.org>
Auto-Submit: Sorin Jianu <sorin@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1286915}
2024-04-13 02:33:03 +00:00