History log of /system/update_engine/update_manager/state_factory.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ab5a0af8e6ebac0211da5b08010e4855ce463108 12-Oct-2017 Ben Chan <benchan@chromium.org> update_engine: migrate from base::MakeUnique to std::make_unique

base::MakeUnique is being deprecated as we can now use std::make_unique
when compiling code in the C++14 mode.

BUG=chromium:769107
CQ-DEPEND=CL:669672
TEST=Run unit tests.

Change-Id: I82f76647239b1eb3b98b19f6479788ffd86ce756
Reviewed-on: https://chromium-review.googlesource.com/716826
Commit-Ready: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Amin Hassani <ahassani@chromium.org>
Reviewed-by: Sen Jiang <senj@chromium.org>
/system/update_engine/update_manager/state_factory.cc
47186290f8b02cca27574188d72d49f3841f9f4e 02-Aug-2017 Amin Hassani <ahassani@google.com> update_engine: Breaks the use of libcros into two dbus proxies.

This CL breaks USE_LIBCROS into two defines:
USE_CHROME_NETWORK_PROXY
USE_CHROME_KIOSK_APP
and changes all related build artifacts for both chrome and android.

Breaks USE_libcros into USE_chrome_network_proxy and USE_chrome_kiosk_app.
Removes BRILL_USE_LIBCROS.
Replaces __BRILLO__ with USE_OMAHA.

BUG=chromium:717306
TEST=Ran test 'cros_workon_make --board=amd64-generic --test update_engine'
for all four conditions of the newly introduced two flags.

Change-Id: I9ca5b35c22a17c45a861db6a434239096a896127
Reviewed-on: https://chromium-review.googlesource.com/596802
Commit-Ready: Amin Hassani <ahassani@chromium.org>
Tested-by: Amin Hassani <ahassani@chromium.org>
Tested-by: Sen Jiang <senj@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Sen Jiang <senj@chromium.org>
/system/update_engine/update_manager/state_factory.cc
5c02c1335b98b3a1c8759a664bf7b6a48773f913 27-Jun-2017 Ben Chan <benchan@chromium.org> Replace brillo::make_unique_ptr with base::MakeUnique/base::WrapUnique.

base::MakeUnique mimics std::make_unique and is preferred over
brillo::make_unique_ptr (which is identical to base::WrapUnique).
brillo::make_unique_ptr will eventually be deprecated and removed as its
functionality is well covered by base::MakeUnique and base::WrapUnique.

BUG=chromium:704644
TEST=Run unit tests.

Change-Id: I771b312d04643a1c74dd843947ed30bda510eed2
Reviewed-on: https://chromium-review.googlesource.com/458562
Commit-Ready: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Dan Erat <derat@chromium.org>
Reviewed-by: Alex Deymo <deymo@google.com>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Sen Jiang <senj@chromium.org>
/system/update_engine/update_manager/state_factory.cc
e5f6f2571d43eb65e0b27dd8d50f2c1f0b3fe30f 20-Apr-2017 Daniel Erat <derat@chromium.org> update_engine: Use org.chromium.NetworkProxyService.

Make update_engine call Chrome's new
org.chromium.NetworkProxyService D-Bus service to resolve
network proxies instead of using
org.chromium.LibCrosService. The new service supports
asynchronous replies instead of responding via D-Bus
signals.

BUG=chromium:446115,chromium:703217
TEST=unit tests pass; also added debug logging and verified
that chrome's proxy settings are used

(cherry picked from commit 941cf235c5e56eddc6e4f2de2f38bee032a4dead)
Cherry-pick updated to resolve conflicts with existing code in AOSP.

Change-Id: I8c0704482e9988fe9ed14d32797b3a5b8da3d46a
Reviewed-on: https://chromium-review.googlesource.com/497491
Commit-Ready: Dan Erat <derat@chromium.org>
Tested-by: Dan Erat <derat@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
/system/update_engine/update_manager/state_factory.cc
2058a99cc5360f379949e040b72baf1028c74e8a 23-Aug-2016 Sen Jiang <senj@google.com> Compile update_engine without shill.

Add a new BRILLO_USE_SHILL for shill, it depends on BRILLO_USE_DBUS.

Bug: 30746265
Test: mma with USE_SHILL=1 and USE_DBUS=1
Test: mma with USE_SHILL=0 and USE_DBUS=1
Test: mma with USE_SHILL=0 and USE_DBUS=0

Change-Id: Ia5ef7a7c7cf48e81c2dd0e4326eeac0f7c0248b3
/system/update_engine/update_manager/state_factory.cc
c92195c0f6cba4851b7352062bba03c95b7a7e94 14-Jun-2016 Sen Jiang <senj@google.com> Compile libupdate_engine without DBus.

Test: mma with and without BRILLO_USE_DBUS=1
Test: adb shell /data/nativetest/update_engine_unittests/update_engine_unittests
Bug: 28800946

Change-Id: If3b05e7bc7a123d3d9b0dcc4597d915249a2de33
/system/update_engine/update_manager/state_factory.cc
9730679339fbf3e52a706dcab36eaeffbc71e404 09-Jun-2016 Sen Jiang <senj@google.com> Make RealDevicePolicyProvider own session_manager.

It's the only class using this proxy.

Bug: 28800946
Test: mma

Change-Id: I4a7e5469aa0a27d5756a88a0d6af4017737b70fc
/system/update_engine/update_manager/state_factory.cc
f5bebaef8dd12ff71baaf6fb4d4543db3615a6b4 04-Jun-2016 Sen Jiang <senj@google.com> Add ConnectionManagerAndroid.

Just a stub implementation that always allow update right now.

Test: mma
Bug: 28800946

Change-Id: I4ff6164d459d142567d49a351f70128f5fc74b9f
/system/update_engine/update_manager/state_factory.cc
6e30bc57d672f304595e6529dd6ad0aefc3c5453 25-Feb-2016 Xiyuan Xia <xiyuan@google.com> Handle AllowKioskAppControlChromeVersion device policy

When AllowKioskAppControlChromeVersion is set to true, get the
required platform version of the auto launched kiosk app from
Chrome and use it as the target version prefix. If the required
platform version is empty, ignore update disabled policy and do
AU to latest.

BUG=chromium:577783

Change-Id: I2ff1981b6c03aa9da4fe46b6f78061c69a71c49a
/system/update_engine/update_manager/state_factory.cc
39910dcd1d68987ccee7c3031dc269233a8490bb 10-Nov-2015 Alex Deymo <deymo@google.com> Split payload application code into a subdirectory.

This patch splits from the main libupdate_engine code the part that
is strictly used to download and apply a payload into a new static
library, moving the code to subdirectories. The new library is divided
in two subdirectories: common/ and payload_consumer/, and should not
depend on other update_engine files outside those two subdirectories.
The main difference between those two is that the common/ tools are more
generic and not tied to the payload consumer process, but otherwise they
are both compiled together.

There are still dependencies from the new libpayload_consumer library
into the main directory files and DBus generated files. Those will be
addressed in follow up CLs.

Bug: 25197634
Test: FEATURES=test emerge-link update_engine; `mm` on Brillo.

Change-Id: Id8d0204ea573627e6e26ca9ea17b9592ca95bc23
/system/update_engine/update_manager/state_factory.cc
763e7dbaac735da0ae802933a1015b6b7874bce2 28-Aug-2015 Alex Deymo <deymo@google.com> update_engine: New BootControlInterface class.

The new BootControlInterface class is a platform-independent
abstraction to control the bootloader. It provides methods for setting
what partition slots are available for booting and getting the
bootloader status about the available slots.

The Chrome OS specific implementation of the bootloader was moved to
the BootControlChromeOS which now depends on the vboot_host
implementation used in Chrome OS. Follow up CL will implement the
equivalent class for Brillo.

BUG=b:23010637
TEST=unittests; cros flash from the new image and rolled back from it.

Change-Id: I0a03aeeb8c21d8c99e1866b625e6e8c96628215b
/system/update_engine/update_manager/state_factory.cc
aea4c1cea20dda7ae7e85fc8924a2d784f70d806 20-Aug-2015 Alex Deymo <deymo@google.com> Re-license update_engine to Apache2

This patch automatically replaced the license on all text files from
Chromium OS (BSD style) to AOSP (Apache2), keeping the original year as
a reference.

The license header was added to .gyp and .gypi files, the NOTICE was
replaced with a copy of the Apache2 license and MODULE_LICENSE_* file
was updated.

BUG=b/23084294
TEST=grep 'Chromium OS Authors' doesn't find anything.

Change-Id: Ie5083750755f5180a8a785b24fe67dbf9195cd10
/system/update_engine/update_manager/state_factory.cc
305345001d85ca2282112c2a30fe75c7a4773491 21-Jul-2015 Alex Deymo <deymo@chromium.org> update_engine: Switch to chrome-dbus for client requests in update_engine

update_engine daemon acts as DBus client to send DBus calls to shill,
power_manager and chrome, and to listen for signals from shill, chrome
and login_manager. This patch migrates these calls and signals to use
chrome-dbus framework instead of dbus-glib.

All references to dbus-glib code are removed.

BUG=chromium:419827
TEST=Updated unittest. Deployed on a link device and tested interactions with shill and chromium.

Change-Id: I31b389e0d1690cccb115ff3b6539c876ba81bd0e
Reviewed-on: https://chromium-review.googlesource.com/290990
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
Trybot-Ready: Alex Deymo <deymo@chromium.org>
/system/update_engine/update_manager/state_factory.cc
9b7ae1ac9965448f403f3df1b0d37e9ba39b4a64 15-Dec-2014 Alex Deymo <deymo@chromium.org> update_engine: Refresh device policy when it is updated.

The session manager emits a signal whenever the device policy is
updated. This patch makes update_engine listen for that signal and
reload the device policy.

BUG=chromium:423037
TEST=deployed update_engine and checked the policy is refreshed.

Change-Id: I71dd7047e53d49f3402e1f9f4a67ec8cbd3739d3
Reviewed-on: https://chromium-review.googlesource.com/235884
Trybot-Ready: Alex Deymo <deymo@chromium.org>
Reviewed-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
Tested-by: Alex Deymo <deymo@chromium.org>
/system/update_engine/update_manager/state_factory.cc
02f7c1dee242f490143791dbb73fa23fa3007cfa 19-Oct-2014 Ben Chan <benchan@chromium.org> update_engine: Replace scoped_ptr with std::unique_ptr.

BUG=None
TEST=`FEATURES=test emerge-$BOARD update_engine`
TEST=`USE='clang asan' FEATURES=test emerge-$BOARD update_engine`

Change-Id: I55a2f7f53675faaac20ba25f72ed52cf938d7744
Reviewed-on: https://chromium-review.googlesource.com/224189
Tested-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Ben Chan <benchan@chromium.org>
/system/update_engine/update_manager/state_factory.cc
88b591f24cb3f94f982d7024c2e8ed25c2cc26a2 29-Aug-2014 Alex Vakulenko <avakulenko@chromium.org> update_engine: Replace NULL with nullptr

Replaced the usage of NULL with nullptr. This also makes it possible to
use standard gtest macros to compare pointers in Update Manager's unit tests.
So, there is no need in custom UMTEST_... macros which are replaced with the
gtest macros (see change in update_engine/update_manager/umtest_utils.h):

UMTEST_ASSERT_NULL(p) => ASSERT_EQ(nullptr, p)
UMTEST_ASSERT_NOT_NULL(p) => ASSERT_NE(nullptr, p)
UMTEST_EXPECT_NULL(p) => EXPECT_EQ(nullptr, p)
UMTEST_EXPECT_NOT_NULL(p) => EXPECT_NE(nullptr, p)

BUG=None
TEST=FEATURES=test emerge-link update_engine
USE="clang asan" FEATURES=test emerge-link update_engine

Change-Id: I77a42a1e9ce992bb2f9f263db5cf75fe6110a4ec
Reviewed-on: https://chromium-review.googlesource.com/215136
Tested-by: Alex Vakulenko <avakulenko@chromium.org>
Reviewed-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Alex Vakulenko <avakulenko@chromium.org>
/system/update_engine/update_manager/state_factory.cc
63784a578dd26880454d70797519358a2326291b 28-May-2014 Alex Deymo <deymo@chromium.org> Rename the PolicyManager to UpdateManager.

This change renames the PolicyManager class, directory, tests, etc,
to avoid confusion with libpolicy and its classes.

BUG=chromium:373551
TEST=emerged on link.
CQ-DEPEND=CL:I43081673c7ba409f02273197da7915537bde39c6

Change-Id: Iffa76caa3b95ecbbdba87ab01006d1d8ce35a27f
Reviewed-on: https://chromium-review.googlesource.com/201876
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: David Zeuthen <zeuthen@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
/system/update_engine/update_manager/state_factory.cc