New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 691108 link

Starred by 10 users

Issue metadata

Status: Archived
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Feature

Blocked on:
issue 433793
issue 725313

Blocking:
issue 681901
issue 698877
issue 739788



Sign in to add a comment

auto updates over cellular

Project Member Reported by hannia@chromium.org, Feb 10 2017

Issue description

When users are connected to a cellular connection (cellular enabled Chromebook, Android hotspot or mobile wifi connection), they don’t get auto-updates. Auto-updates only occur when the user is connected to Ethernet or Wi-Fi. 

The backend tags certain updates as “important” or security critical. When one of these updates becomes available, we should send indicated it with a red colored icon in the settings UI. This should redirect them to the settings page to update over cellular
 
Labels: -Type-Bug OS-Chrome Type-Feature
We could also do this with a message center notification with a link to the Settings section (about page).

Labels: M-59
Status: Assigned (was: Untriaged)
1-pager: https://docs.google.com/document/d/1TQJvhI0hXcsTGFckRau2xo8zGNX2n5Bisw7nKrr-p9s/edit

The current plan involves two UI changes:

(1) An indication that the update is available. It should either be in the system menu or the notification center. Let's check with UI Review.

(2) Additional info in the About page along with a way for the user to start downloading the update.

@hannia is there a launch bug for this?
Cc: hannia@chromium.org
Blocking: 681901
Cc: abodenha@chromium.org
I think we have enough issues tied to issue 681901 to make this a priority for 59 WDYT? Thinking about these all together would have both design and implementation benefits.

+abodenha@ - I don't want to overextend myself, is there anyone available who will have cycles for this? I am more than happy to give some direction.

I'd be excited to make these About improvements a P1 for M59.

Comment 6 by dbeam@chromium.org, Feb 13 2017

Labels: Hotlist-MD-Settings-About
Blocking: 698877
Sorry, coming late to this.

Re comment #4: Is this something a noogler could take on as a starter project?
Potentially. I would like to see the parent issue 681901 done cohesively and ideally for M59, but I would be more than happy to help direct and parse out tasks for the effort.

Sounds good.  Let's see what I can figure out.  Backlog currently has this prioritized for the 2nd half of the year, but I'm fine using nooglers to move things up when we can.

tbuckley@ do PM and UX have enough bandwidth to tackle this if I'm able to throw a noogler at it?
Yes! When would the noogler be available?
Cc: weidongg@google.com
weidongg@ is in orientation this week and should be available to start on this next week.

Do we have UX for this?  It's not too much but there are a lot of little details to consider. Not sure 59 is realistic.

hannia@ sorry I forgot details on this one in review this morning.
go/cros-cellular-updates has mocks for the Settings pieces that are needed. Strings may change, but it should be good enough to get started.

There's also a proposed notification where the UI needs to be finalized.
I'll let hannia confirm, but I also don't think M59 is a hard deadline. It shouldn't be a problem if we need to punt to M60.
Blockedon: 433793
In update engine, there exist a interface to check for update and downloading update, but we need a interface to only get update information. 
Cc: tbuck...@chromium.org
Owner: weidongg@chromium.org
@weidongg is that something you are looking into or someone else needs to take on?
#17 I talked with @adlr last Friday, and he said he was going to find someone implementing these interfaces. If he cannot find one, he will instruct me to do that.
#CBC-RS/TC-watchlist

Many users do not even know that their Chromebooks will not update on cellular connections without manual CrOSH commands.

Here is a recent thread that illustrates the issue.
https://productforums.google.com/forum/#!topic/chromebook-central/zwkOU0_I-9s

It is a frequent subject on CBC.


Project Member

Comment 21 by bugdroid1@chromium.org, May 10 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/system_api/+/58aa5124d7194cea591f88781be87a924d6b668d

commit 58aa5124d7194cea591f88781be87a924d6b668d
Author: Weidong Guo <weidongg@chromium.org>
Date: Wed May 10 20:53:54 2017

Update dbus constants for update engine

CL 479467 depends on this CL.

BUG= chromium:691108 
TEST=N/A

Change-Id: I8781afa4e21343c4f33184764262d08e9f6e5dec
Reviewed-on: https://chromium-review.googlesource.com/481102
Reviewed-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Dan Erat <derat@chromium.org>
Tested-by: Weidong Guo <weidongg@chromium.org>
Commit-Queue: Weidong Guo <weidongg@chromium.org>

[modify] https://crrev.com/58aa5124d7194cea591f88781be87a924d6b668d/dbus/update_engine/dbus-constants.h

Project Member

Comment 22 by bugdroid1@chromium.org, May 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/aosp/platform/system/update_engine/+/70063d9f7e229db8c5b42443ca96ac23a971a6dd

commit 70063d9f7e229db8c5b42443ca96ac23a971a6dd
Author: Weidong Guo <weidongg@chromium.org>
Date: Sat May 13 03:58:02 2017

Add functions to allow update over cellular (including tethered connection)

- Add an update state NEED_PERMISSION_TO_UPDATE which is broadcasted along
with the update info (version and size) when |OmahaRequestAction| aborts
update due to cellular connection. So the state transition will be:
IDLE->CHECKING_FOR_UPDATE->NEED_PERMISSION_TO_UPDATE->REPORTING_ERROR_EVENT
->IDLE
(The Chrome UI prompts an alert window showing update size and asks user
whether to proceed upon receiving this state.)

- Add a dbus interface to set update over cellular target
(kPrefsUpdateOverCellularTargetVersion and kPrefsUpdateOverCellularTargetSize).
The target is the one received by Chrome UI in NEED_PERMISSION_TO_UPDATE
broadcast. By sending the target back with the dbus call, update engine can
double check the target with the server to make sure there's no new server
push after NEED_PERMISSION_TO_UPDATE is broadcasted to Chrome UI.
(This dbus call is invoked when the user chooses to proceed to update at the
alert window. The dbus call is followed by another dbus call |AttemptUpdate|)

- So, the the decision tree as to whether to allow update over cellular
connection has changed to:
IF (device policy DeviceUpdateAllowedConnectionTypes set)
  follow device policy's decision
ELSE IF (kPrefsUpdateOverCellularPermission set to true)
  allow update
ELSE IF (Either kPrefsUpdateOverCellularTargetVersion or
    kPrefsUpdateOverCellularTargetSize is not set, or they are set but do not
    match the version and size in |OmahaResponse| retrieved by
    |OmahaRequestAction|)
  disallow update, and broadcast NEED_PERMISSION_TO_UPDATE
ELSE
  allow update
ENDIF

- This decision making happens at |OmahaRequestAction| after |OmahaResponse| is
retrieved. Since we want to separate the device policy check with the user
preferences check which depends on |OmahaResponse| during checking for update,
we modify ConnectionManager::IsUpdateAllowedOver by moving the user preferences
check to |OmahaRequestAction|. Thus, the function by default returns true for
cellular connection if device policy is not set.

- Corner case:
Adding kPrefsUpdateOverCellularPermission and
kPrefsUpdateOverCellularTargetSize seems to complicate the logic here. But
they could effectively solve a corner case where the target does not match
|OmahaResponse| due to new server push after broadcasting
NEED_PERMISSION_TO_UPDATE. In that case, we simply broadcast
NEED_PERMISSION_TO_UPDATE again along with new update info.

CQ-DEPEND=CL:481102
BUG= chromium:691108 
TEST='FEATURES=test emerge-link update_engine'

Change-Id: I91b07e6030f202f7d0d48fb50787115695f228e3
Reviewed-on: https://chromium-review.googlesource.com/479467
Commit-Ready: Weidong Guo <weidongg@chromium.org>
Tested-by: Weidong Guo <weidongg@chromium.org>
Reviewed-by: Weidong Guo <weidongg@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>

[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/dbus_service.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/connection_manager_interface.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/omaha_request_action_unittest.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/common_service.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/common/error_code_utils.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/binder_bindings/android/brillo/IUpdateEngine.aidl
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/dbus_bindings/org.chromium.UpdateEngineInterface.dbus-xml
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/omaha_request_action.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/metrics_utils.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/mock_connection_manager.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/common_service.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/update_status_utils.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/dbus_service.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/update_attempter.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/common/constants.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/connection_manager.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/connection_manager.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/connection_manager_unittest.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/client_library/include/update_engine/update_status.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/common/constants.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/payload_state.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/update_manager/chromeos_policy.cc
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/common/error_code.h
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/UpdateEngine.conf
[modify] https://crrev.com/70063d9f7e229db8c5b42443ca96ac23a971a6dd/omaha_request_action.cc

Project Member

Comment 23 by bugdroid1@chromium.org, May 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eaad51c9f5331a5344804453307c3cf5fe1ef259

commit eaad51c9f5331a5344804453307c3cf5fe1ef259
Author: weidongg <weidongg@chromium.org>
Date: Sat May 13 22:49:35 2017

Make update over cellular an option for user

- What is changed in update engine of Chrome OS?
A new state NEED_PERMISSION_TO_UPDATE will be broadcasted to Chrome UI
When update aborts due to cellular connection.
A new dbus interface SetUpdateOverCellularTarget() is added to set
update target (version and size) in preferences maintained by update
engine.

- What is the target in SetUpdateOverCellularTarget()?
When update engine broadcast NEED_PERMISSION_TO_UPDATE, it also
broadcasts the metadata of this update such as version and size. We call
this target. Once user grants the permission to proceed update over
cellular, we call SetUpdateOverCellularTarget() to send the target back
to Chrome OS.

- Why do we need to send the target back to update engine?
There's a corner: When NEED_PERMISSION_TO_UPDATE is broadcasted to
chrome UI, an update warning dialog will show the update size to user
and ask whether to proceed. If user just keep the dialog window long
enough until there's a new update available. Then clicking 'Continue'
will result in a much larger download as the update engine only download
the lastest update.

This rarely happens, but it's more user friendly to consider this case.

We send this target back to update engine to make it check with the
server. If the target matches the latest update on the server, then
update proceeds. Otherwise, update engine needs to broadcast
NEED_PERMISSION_TO_UPDATE again with the latest update metadata.

- Design doc: go/cros-cellular-updates

- Related chromium CL: https://codereview.chromium.org/2873193002/

- Dependent on chromeos CL:
https://chromium-review.googlesource.com/#/c/479467/
https://chromium-review.googlesource.com/#/c/481102/

BUG= chromium:691108 
TEST=None

Review-Url: https://codereview.chromium.org/2881473002
Cr-Commit-Position: refs/heads/master@{#471609}

[modify] https://crrev.com/eaad51c9f5331a5344804453307c3cf5fe1ef259/chrome/browser/chromeos/login/screens/update_screen.cc
[modify] https://crrev.com/eaad51c9f5331a5344804453307c3cf5fe1ef259/chrome/browser/extensions/api/system_private/system_private_api.cc
[modify] https://crrev.com/eaad51c9f5331a5344804453307c3cf5fe1ef259/chromeos/dbus/fake_update_engine_client.cc
[modify] https://crrev.com/eaad51c9f5331a5344804453307c3cf5fe1ef259/chromeos/dbus/fake_update_engine_client.h
[modify] https://crrev.com/eaad51c9f5331a5344804453307c3cf5fe1ef259/chromeos/dbus/update_engine_client.cc
[modify] https://crrev.com/eaad51c9f5331a5344804453307c3cf5fe1ef259/chromeos/dbus/update_engine_client.h
[modify] https://crrev.com/eaad51c9f5331a5344804453307c3cf5fe1ef259/tools/metrics/histograms/enums.xml

Project Member

Comment 24 by bugdroid1@chromium.org, May 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f472642fd6c20b63b0f1a2f62564f2aad56f4be3

commit f472642fd6c20b63b0f1a2f62564f2aad56f4be3
Author: weidongg <weidongg@chromium.org>
Date: Sun May 14 22:10:02 2017

Make update over cellular an option for user

- What is changed in update engine of Chrome OS?
A new state NEED_PERMISSION_TO_UPDATE will be broadcasted to Chrome UI
When update aborts due to cellular connection.
A new dbus interface SetUpdateOverCellularTarget() is added to set
update target (version and size) in preferences maintained by update
engine.

- What is the target in SetUpdateOverCellularTarget()?
When update engine broadcast NEED_PERMISSION_TO_UPDATE, it also
broadcasts the metadata of this update such as version and size. We call
this target. Once user grants the permission to proceed update over
cellular, we call SetUpdateOverCellularTarget() to send the target back
to Chrome OS.

- Why do we need to send the target back to update engine?
There's a corner: When NEED_PERMISSION_TO_UPDATE is broadcasted to
chrome UI, an update warning dialog will show the update size to user
and ask whether to proceed. If user just keep the dialog window long
enough until there's a new update available. Then clicking 'Continue'
will result in a much larger download as the update engine only download
the lastest update.

This rarely happens, but it's more user friendly to consider this case.

We send this target back to update engine to make it check with the
server. If the target matches the latest update on the server, then
update proceeds. Otherwise, update engine needs to broadcast
NEED_PERMISSION_TO_UPDATE again with the latest update metadata.

- Design doc: go/cros-cellular-updates

- Related chromium CL: https://codereview.chromium.org/2881473002/

- Dependent on chromeos CL:
https://chromium-review.googlesource.com/#/c/479467/
https://chromium-review.googlesource.com/#/c/481102/

BUG= chromium:691108 
TEST=None
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2873193002
Cr-Commit-Position: refs/heads/master@{#471639}

[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/resources/settings/about_page/about_page.html
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/resources/settings/about_page/about_page.js
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/resources/settings/about_page/about_page_browser_proxy.js
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/resources/settings/about_page/update_warning_dialog.js
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/help_handler.cc
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/help_handler.h
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/version_updater.h
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/version_updater_basic.cc
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/version_updater_chromeos.cc
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/version_updater_chromeos.h
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/version_updater_chromeos_unittest.cc
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/version_updater_mac.mm
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/help/version_updater_win.cc
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/settings/about_handler.cc
[modify] https://crrev.com/f472642fd6c20b63b0f1a2f62564f2aad56f4be3/chrome/browser/ui/webui/settings/about_handler.h

Project Member

Comment 25 by bugdroid1@chromium.org, May 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ef06a6f4d0434cbc277103b953ed33b12d0d0261

commit ef06a6f4d0434cbc277103b953ed33b12d0d0261
Author: weidongg <weidongg@chromium.org>
Date: Mon May 22 17:47:11 2017

Add update available icon in system tray

- Show an update available icon in system tray upon receiving
NEED_PERMISSION_TO_UPDATE state from update engine.

- This icon brings user to the about Chrome OS page and prompts update
warning window with update size.

- Design doc: go/cros-cellular-updates

BUG= chromium:691108 
TEST=None
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2882933002
Cr-Commit-Position: refs/heads/master@{#473614}

[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/ash/ash_strings.grd
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/ash/public/interfaces/system_tray.mojom
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/ash/system/tray/system_tray_controller.cc
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/ash/system/tray/system_tray_controller.h
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/ash/system/update/tray_update.cc
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/ash/system/update/tray_update.h
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/BUILD.gn
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/chromeos/upgrade_detector_chromeos.cc
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/resources/settings/about_page/about_page.js
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/ui/ash/system_tray_client.cc
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/ui/ash/system_tray_client.h
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/upgrade_detector.cc
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/upgrade_detector.h
[add] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/browser/upgrade_observer.h
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/common/url_constants.cc
[modify] https://crrev.com/ef06a6f4d0434cbc277103b953ed33b12d0d0261/chrome/common/url_constants.h

Blockedon: 725313
Project Member

Comment 27 by bugdroid1@chromium.org, May 23 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a02f7daa0abeca53945fe248847d955cae1a064a

commit a02f7daa0abeca53945fe248847d955cae1a064a
Author: weidongg <weidongg@chromium.org>
Date: Tue May 23 17:12:11 2017

Show proper message in about Chrome OS page

- Background:
Updates over cellular is blocked by Chrome UI by default, but we now
allow so if user is actively checking for updates (e.g clicking 'check
for updates' button). But auto-updates over cellular is still not
supported.

- Changes in this CL:
Add a |interactive| parameter to IsUpdateOverCellularAllowed(), which
indicates whether user is actively checking for updates.

Show proper warning message when user is over cellular connection.

- Design doc: go/cros-cellular-updates

BUG= chromium:691108 
TEST=go/about_chrome_os_err_msg for screenshots of different messages
shown in different situations.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2897773002
Cr-Commit-Position: refs/heads/master@{#473953}

[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/app/chromeos_strings.grdp
[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/browser/chromeos/login/wizard_controller.cc
[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/browser/resources/settings/about_page/about_page.js
[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/browser/ui/webui/help/help_handler.cc
[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/browser/ui/webui/help/help_utils_chromeos.cc
[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/browser/ui/webui/help/help_utils_chromeos.h
[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/browser/ui/webui/help/version_updater_chromeos.cc
[modify] https://crrev.com/a02f7daa0abeca53945fe248847d955cae1a064a/chrome/browser/ui/webui/settings/about_handler.cc

Labels: Merge-Request-60
Request merge of CL in #28.

Comment 30 by hannia@google.com, Jun 2 2017

Approved to merge
Project Member

Comment 31 by sheriffbot@chromium.org, Jun 2 2017

Labels: -Merge-Request-60 Hotlist-Merge-Review Merge-Review-60
This bug requires manual review: There is .grd file changes and we are only 59 days from stable.
Please contact the milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), josafat@(ChromeOS), bustamante@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
#30: I think Josafat needs to review/approve this merge.
Labels: -M-59
Cc: josa...@chromium.org
@josafat, please review the merge in #28.
Labels: -Merge-Review-60 Merge-Approved-60
Labels: M-60
Project Member

Comment 37 by bugdroid1@chromium.org, Jun 14 2017

Labels: -merge-approved-60 merge-merged-3112
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/caaa7bc498dc0e8d8e06732452cf57e863372464

commit caaa7bc498dc0e8d8e06732452cf57e863372464
Author: Qiang Xu <warx@chromium.org>
Date: Wed Jun 14 01:27:08 2017

[merge to m60] Treat tethered networks as mobile networks

merge to m60 on behalf of weidongg@

This is additional CL to support update over cellular.
- add a property in NetworkState indicating tethering state.
- show a warning message in about Chrome OS page on tethered networks.

TBR=xiyuan@chromium.org, stevenjb@chromium.org
BUG= 691108 

Review-Url: https://codereview.chromium.org/2919683002
Cr-Original-Commit-Position: refs/heads/master@{#476464}
Review-Url: https://codereview.chromium.org/2933323004 .
Cr-Commit-Position: refs/branch-heads/3112@{#334}
Cr-Branched-From: b6460e24cf59f429d69de255538d0fc7a425ccf9-refs/heads/master@{#474897}

[modify] https://crrev.com/caaa7bc498dc0e8d8e06732452cf57e863372464/chrome/browser/ui/webui/help/help_utils_chromeos.cc
[modify] https://crrev.com/caaa7bc498dc0e8d8e06732452cf57e863372464/chrome/browser/ui/webui/help/help_utils_chromeos.h
[modify] https://crrev.com/caaa7bc498dc0e8d8e06732452cf57e863372464/chrome/browser/ui/webui/help/version_updater_chromeos.cc
[modify] https://crrev.com/caaa7bc498dc0e8d8e06732452cf57e863372464/chrome/browser/ui/webui/settings/about_handler.cc
[modify] https://crrev.com/caaa7bc498dc0e8d8e06732452cf57e863372464/chromeos/network/network_state.cc
[modify] https://crrev.com/caaa7bc498dc0e8d8e06732452cf57e863372464/chromeos/network/network_state.h

Status: Fixed (was: Assigned)

Comment 39 by tic...@gmail.com, Jun 23 2017

Just for an additional data point, I am currently travelling so have been affected by this bug. I have managed to update (to Version 60.0.3112.41) and with update_over_cellular enabled, the chrome://settings/help page still says I need to be connected to Ethernet/WiFi to update (see attached).

- Mike
Screenshot 2017-06-23 at 09.36.37.png
36.2 KB View Download
Re #39, "update_over_cellular enable" will go around UI and directly set updateOverCellularPermission to true in Chrome OS, resulting in async between UI and Chrome OS. IMO the solution is to unset it by "update_over_cellular disable".

I think your device is able to update over cellular even without the "update_over_cellular enable" since the feature we were working on here is to allow user to update over cellular even without setting "update_over_cellular enable".
#40 -- The message shown by #39 is quite confusing.

If the user clicks on the "CHECK FOR UPDATES" button, while connected to the mobile network, what SHOULD happen? 

Should they see the same warning message to go find a WiFi network, or will the update proceed?

Without using the cros override, how would a user do an update if they are on a mobile connection?

There should be some UI button or option where the user can give permission to update on cellular. "ALLOW UPDATE"?

If the user clicks on the "CHECK FOR UPDATES" button, while connected to the mobile network, what SHOULD happen? 
If update is available, then UI pops up an update warning window. User could confirm downloads by clicking 'Continue'. Then updates begin.
Otherwise, UI says 'Your Chromebook is up to date'.

Should they see the same warning message to go find a WiFi network, or will the update proceed?
The warning message on the About Chrome OS page will be 'Automatic updates only happen over Wifi or Ethernet.' That inidcates user could still manually check for update by clicking the button.

Without using the cros override, how would a user do an update if they are on a mobile connection?
They could click the 'Check for updates' button to manually update. Or they could wait until Chrome OS detects an available update and shows an update icon in the system status tray.

There should be some UI button or option where the user can give permission to update on cellular. "ALLOW UPDATE"?
That would be the 'Continue' button in update warning dialog. By clicking this, user gives Chrome OS one time permission to update.
Frame.png
173 KB View Download
Frame (1).png
181 KB View Download
Blocking: 739788
weidongg@ - thanks for the explanations. A followup clarification on this, please --

"Without using the cros override, how would a user do an update if they are on a mobile connection?
They could click the 'Check for updates' button to manually update. Or they could wait until Chrome OS detects an available update and shows an update icon in the system status tray."

Assume they have NOT set the update_over_cellular flag.
Assume they did not manually check for an update.

An update is released and they see the update icon.

They click on the icon, or restart the Chromebook after the update icon has been set.

Is that when they will also see the warning "Download update using mobile data"?
If they click on the icon, they will see the warning "Download update using mobile data". If they restart Chromebook, the update icon would disappear because chrome does not save the state. Chromebook periodically talks with server to check for updates, so the icon will appear again when it detects an update. 
 Issue 567798  has been merged into this issue.

Comment 47 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment