lp:chromium-os-update-engine

Created by Ted Gould and last modified
Get this branch:
bzr branch lp:chromium-os-update-engine

Related bugs

Related blueprints

Branch information

Owner:
Registry Administrators
Project:
Chromium OS Update Engine
Status:
Development

Import details

Import Status: Failed

This branch is an import of the HEAD branch of the Git repository at http://git.chromium.org/chromiumos/platform/update_engine.git.

The import has been suspended because it failed 5 or more times in succession.

Last successful import was .

Import started on pear and finished taking 20 seconds — see the log
Import started on pear and finished taking 10 seconds — see the log
Import started on neumayer and finished taking 30 seconds — see the log
Import started on pear and finished taking 15 seconds — see the log

Recent revisions

458. By Chris Sosa <email address hidden>

Never defer updates on interactive checks.

Looks like we had a bug when adding the deferred logic. We should never
defer on interactive checks as it's really confusing to a user who's
doing an interactive check. This change is simple enough but I've changed
all unittests that tested deferred behavior to also make sure they allow
an update if interactive is set.

BUG=chromium:274056
TEST=Unittests

Change-Id: Ib63dbd20e64bed2da84e68c96291335e00e944a2
Reviewed-on: https://gerrit.chromium.org/gerrit/66864
Reviewed-by: Chris Sosa <email address hidden>
Tested-by: Chris Sosa <email address hidden>
Commit-Queue: Chris Sosa <email address hidden>

457. By Chris Sosa <email address hidden>

Allow HTTP urls when device policy doesn't specify.

BUG=chromium:277835
TEST=Unittest

Change-Id: I638248dcbdbdaf48e38b79638b2348aa6c1400fb
Reviewed-on: https://gerrit.chromium.org/gerrit/66732
Tested-by: Chris Sosa <email address hidden>
Reviewed-by: Don Garrett <email address hidden>
Commit-Queue: Chris Sosa <email address hidden>

456. By Andrew de los Reyes <email address hidden>

Remove unneeded pcrecpp dependency.

BUG=None
TEST=emerge-link -av1 update_engine built without issue.

Change-Id: I1287c808fa363f42cff71ba22684b600cf164722
Reviewed-on: https://gerrit.chromium.org/gerrit/66381
Reviewed-by: Chris Sosa <email address hidden>
Tested-by: Andrew de los Reyes <email address hidden>
Commit-Queue: Andrew de los Reyes <email address hidden>

455. By Alex Deymo <email address hidden>

Add Installer.UpdatesAbandonedEventCount metric.

This patch adds a new metric similar to
Installer.UpdatesAbandonedCount that reports the number of abandoned
payloads every time a payload is abandoned. A payload is considered
"abandoned" when it was already attempted but not finished for any
reason, and a newer payload is avaibled. In this situation,
update_engine drops the previous payload and starts again with the
new one.

Every time a payload is abandoned, the new metric
Installer.UpdatesAbandonedEventCount is sent with the number of
consecutive different abandoned payloads since the last successful
update. A high number of entries greater than 1 in this metric will
imply that we are releasing new payloads too often, or that the users
are taking too long to download an update.

Finally, when a payload is successfully applied, the total number of
abandoned payloads since the previous successful update is sent as
the the metric Installer.UpdatesAbandonedCount.

BUG=chromium:261370
TEST=unittests

Change-Id: I47054b541c4700a86183461a5cf92830883ea4f3
Reviewed-on: https://gerrit.chromium.org/gerrit/65328
Commit-Queue: Alex Deymo <email address hidden>
Reviewed-by: Alex Deymo <email address hidden>
Tested-by: Alex Deymo <email address hidden>

454. By Alex Deymo <email address hidden>

unittest: Remove temporary directories.

The CreateExtImageAtPath() test helper function creates an image
and mounts it at a randomly genereted path directory. Nevertheless,
this function wasn't removing the created mount path at the end
since the mount path is a directory and not a regular file. This
was leaving a lot of empty temporary directories in /tmp and
printing the following error message during test:

[0808/211221:ERROR:utils.h(401)] Unable to unlink path /tmp/UpdateEngineTests_mnt-fymh70: Is a directory

This patch fixes that problem removing the directory when the
function exits.

BUG=None
TEST=unittest pass and doesn't print the mentioned error line.

Change-Id: Iec1d38b0fce437a3b5ecc26ae8c933b8ff1bba80
Reviewed-on: https://gerrit.chromium.org/gerrit/65286
Reviewed-by: Gilad Arnold <email address hidden>
Tested-by: Alex Deymo <email address hidden>
Commit-Queue: Alex Deymo <email address hidden>

453. By Don Garrett <email address hidden>

Correctly report firmware update failure if RO needs update.

If the RO Firmware needs updating but can't be because it's
really RO, then report a new erro code (43) back to Omaha.

This normally only happens during board bringup when the RO
firmware is locked prematurely. We want to know these devices
exist so we can replace them.

BUG=chromium:218555
TEST=Build/unittests. Did NOT test on hardware with bug.

Change-Id: I383a999f1b175c378bef936c55d87565d8113336
Reviewed-on: https://gerrit.chromium.org/gerrit/63841
Commit-Queue: Don Garrett <email address hidden>
Reviewed-by: Don Garrett <email address hidden>
Tested-by: Don Garrett <email address hidden>

452. By Chris Sosa <email address hidden>

Remove all mentions of Set/Get Track and hard-coding of canary-channel.

This CL removes the deprecated functionality of Set/Get Track previously
used to change channels. Now that the UI is using Set/Get Channel we no
longer need these methods. I've also gone ahead and fixed the long standing
bug of needed to do an update check before testing channel change.

I've also added the testing of allow powerwash functionality to update_engine
client to better test this feature.

BUG=chromium:221850
TEST=unittests + update_engine_client with channel change and allowing
powerwash and not allowing powerwash. Confirmed the versions were as expected (
when going more stable we send version 0.0.0.0 when we allow powerwash vs the
actual version when not).

Change-Id: I87297f7e7e103bb25e62f2d896e155e758030ead
Reviewed-on: https://gerrit.chromium.org/gerrit/63674
Commit-Queue: Chris Sosa <email address hidden>
Reviewed-by: Chris Sosa <email address hidden>
Tested-by: Chris Sosa <email address hidden>

451. By Liam McLoughlin <email address hidden>

Add support for /dev/ubiblockX_0 install devices

BUG=none
TEST=Run unittests, passed

Change-Id: Ie93c3d00370ca80d2a4441817ada4615408c0ba9
Reviewed-on: https://gerrit.chromium.org/gerrit/64020
Reviewed-by: Gilad Arnold <email address hidden>
Commit-Queue: Liam McLoughlin <email address hidden>
Tested-by: Liam McLoughlin <email address hidden>

450. By Gilad Arnold <email address hidden>

AU/unittest: allow use of a parametric update completed marker

This should allow unit tests to be run in parallel. We introduce
a private constructor available only to specific test classes of
UpdateAttempter, which allows us to set a different marker.

Note that, in all unit tests that do not specifically make use of this
marker, we actually want UpdateAttempter to ignore it entirely. I'm not
entirely positive whether not ignoring would lead to interferences
between concurrently run tests, but I think it's better to err on the
safe side. (The marker is never ignored when used with any code other
than UpdateAttempter unit testing code.)

BUG=chromium:236465
TEST=Unit tests pass incl ignore semantics when not needed

Change-Id: I30fbed2ae2c21368d79127ed44811007e2a66e77
Reviewed-on: https://gerrit.chromium.org/gerrit/63840
Tested-by: Gilad Arnold <email address hidden>
Reviewed-by: Alex Deymo <email address hidden>
Commit-Queue: Gilad Arnold <email address hidden>

449. By Chris Sosa <email address hidden>

Add version information to install plan and GetStatus.

As per the TODO this information is useful for debugging and testing
changes i.e. I'd like to know what version I'm updating to. GetStatus
already supports getting this version but we never populate the field.

BUG=chromium:264505
TEST=Unittests + ran update_engine_client -update which uses GetStatus
to communicate status.

Change-Id: I5332e2f206d92aedba509cd5469e9610c88bcd03
Reviewed-on: https://gerrit.chromium.org/gerrit/63675
Commit-Queue: Chris Sosa <email address hidden>
Reviewed-by: Chris Sosa <email address hidden>
Tested-by: Chris Sosa <email address hidden>

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.