f7ead8100211e7a285b48b52f4a235647274ab6e |
|
24-Oct-2015 |
Alex Deymo <deymo@google.com> |
Implement update_engine weave commands The new WeaveServiceInterface abstracs the registration and interaction with weave whenever present. The compilation and usage of weave is based on the BRILLO_USE_WEAVE flag. When enabled, update_engine registers the "_updater" component with methods to force-check for an update and change channels. Bug: 24386758 Bug: 24386768 Test: Deployed on edison, weave commands and state available online. Change-Id: Ic49111772e123b8a2b1971da92fe65785f186ccd
/system/update_engine/fake_system_state.h
|
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/fake_system_state.h
|
d6deb1d0357f47d5525bfaeffa6c201b19abd3e7 |
|
29-Aug-2015 |
Alex Deymo <deymo@google.com> |
Use installed DBus libraries instead of generating them. login_manager, power_manager, debugd and shill now expose a client library with the generated dbus-proxies.h file and the system_api's installed dbus-constants.h. This patch changes update_engine from generating these DBus headers to use the installed client libraries. The client libraries already include the service path string, so we don't need to include system_api dbus-constants.h in most cases, unless we actually use some parameter constants defined there. BUG=b:23084776,b:23560718 TEST=./build_packages --board=link Change-Id: Idb4501e784ebb5928c92902d114462be57d5826a
/system/update_engine/fake_system_state.h
|
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/fake_system_state.h
|
b8803bbfe96abce0ae792a93bc975d478d98d16a |
|
20-Aug-2015 |
Alex Deymo <deymo@google.com> |
Split DBus client proxies into separated headers. Each daemon we talk to should expose its own DBus library. This patch splits the DBus proxies we generate from other daemon's .xml files into separated header files so we can then replace them with libraries. BUG=b:23084776 TEST=FEATURES=test emerge-link update_engine Change-Id: Idbf1671eb7fc4259d493dbe2c8bcc8dad5b8784f
/system/update_engine/fake_system_state.h
|
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/fake_system_state.h
|
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/fake_system_state.h
|
f6ee0163504eaf1a7cc136ba2c075d77ae2b4dd5 |
|
31-Jul-2015 |
Alex Deymo <deymo@chromium.org> |
update_engine: Move ConnectionManager to an abstract Interface. MockConnectionManager required to use one of ConnectionManager constructors passing pointers that won't be use by the mock. This patch moves the interface to its own ConnectionManagerInterface class. BUG=None TEST=unittests still pass. Change-Id: I9ed09daf8e4256304be7dab30cfbe751901dc24b Reviewed-on: https://chromium-review.googlesource.com/290120 Reviewed-by: Alex Vakulenko <avakulenko@chromium.org> Commit-Queue: Alex Deymo <deymo@chromium.org> Trybot-Ready: Alex Deymo <deymo@chromium.org> Tested-by: Alex Deymo <deymo@chromium.org>
/system/update_engine/fake_system_state.h
|
8427b4a6d0e6e02beedbb53798272f8ddc39386f |
|
05-Nov-2014 |
Alex Deymo <deymo@chromium.org> |
update_engine: Standarize mock/fake filenames. Mock classes implement mostly MOCK_METHOD* methods used with gmock. Those classes should be named with the prefix "Mock" in the class name and "mock_" in the header filename. Fake classes implement a working version of the interface they provide, often with extra functionality to change their behavior. Those classes should be prefixed with "Fake" in the class name and "fake_" in the file name. Other minor include order fixes are included in this patch. BUG=None TEST=Unittest still pass. Change-Id: I23de7cb11e25182d5855afacca47d431c97b82bb Reviewed-on: https://chromium-review.googlesource.com/227779 Reviewed-by: Alex Deymo <deymo@chromium.org> Commit-Queue: Alex Deymo <deymo@chromium.org> Tested-by: Alex Deymo <deymo@chromium.org>
/system/update_engine/fake_system_state.h
|
560ae1da0e62f7897699f63631452f0c4144d413 |
|
28-Oct-2014 |
Alex Deymo <deymo@chromium.org> |
update_engine: Mock out UpdateAttempter and OmahaRequestParams. These classes are used by other classes so we need to have a way to unit test those. This patch converts some public methods on these classes to virtual methods so they can be mocked. It implements a new MockOmahaRequestParams with all the public methods behaving like the real object by default. This is now the default class used by the FakeSystemState. Finally, the UpdateAttempterMock is renamed to MockUpdateAttempter to be more consistent with other classes in the project. BUG=None TEST=Unittest pass. Follow up CL using these classes also passes. Change-Id: Iacb7e19d10c1526cea9659c27ab798cad126816f Reviewed-on: https://chromium-review.googlesource.com/225855 Reviewed-by: Alex Deymo <deymo@chromium.org> Commit-Queue: Alex Deymo <deymo@chromium.org> Tested-by: Alex Deymo <deymo@chromium.org>
/system/update_engine/fake_system_state.h
|
157fe307f162d13f53e7f98f6e2da7c60c0ff001 |
|
12-Aug-2014 |
Alex Vakulenko <avakulenko@chromium.org> |
platform2: sweep the lint errors identified by the updated linter cpplint.py has been updated and identified new issues in existing code. Stuff like overridden functions that specify 'override' should not be marked as 'virtual', and constructors with no parameters should not be marked as 'explicit'. BUG=None TEST=cpplint.py `find ./platform2 -name *.cc -or -name *.h` Change-Id: Ibb9de43286d874d076ffd5ebb1b13c36ec794f01 Reviewed-on: https://chromium-review.googlesource.com/211950 Reviewed-by: Alex Vakulenko <avakulenko@chromium.org> Commit-Queue: Alex Vakulenko <avakulenko@chromium.org> Tested-by: Alex Vakulenko <avakulenko@chromium.org>
/system/update_engine/fake_system_state.h
|
cf175a098081f3f0e9ca52d997a7ce1585c14c2d |
|
11-Jul-2014 |
Gilad Arnold <garnold@chromium.org> |
Fix cpplint errors. The only non-obvious change here is the switch from dynamic_cast to static_cast in three cases of down-casting in UpdateAttempter. dynamic_cast is banned by style, nor does it add any safety in this particular case (subsequent code dereferences the result right away without checking whether it's null). BUG=None TEST=None Change-Id: I9d49b46362feaf9c6fa13b2715ebe9fe50308a9a Reviewed-on: https://chromium-review.googlesource.com/207470 Tested-by: Gilad Arnold <garnold@chromium.org> Reviewed-by: Alex Vakulenko <avakulenko@chromium.org> Commit-Queue: Gilad Arnold <garnold@chromium.org>
/system/update_engine/fake_system_state.h
|
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/fake_system_state.h
|
7d623ebf9eee346fdeee71f1ccb32ebaf4bd3318 |
|
14-May-2014 |
Nam T. Nguyen <namnguyen@chromium.org> |
update_engine: Remove GPIO support. We have not used GPIO since Jan 2013. This CL removes the GPIO handling code. As a side effect, it also removes dependency on libudev. BUG=chromium:221725 CQ-DEPEND=CL:199683 TEST=unittest TEST=AU end2end test on real device from older version to a version that has CL applied, then from that to another newer version (need not have this CL applied). Change-Id: I4352488ec360b44a44b137c40a3ae4ec35c6fe9d Reviewed-on: https://chromium-review.googlesource.com/199626 Reviewed-by: Gilad Arnold <garnold@chromium.org> Commit-Queue: Nam Nguyen <namnguyen@chromium.org> Tested-by: Nam Nguyen <namnguyen@chromium.org>
/system/update_engine/fake_system_state.h
|
5bb4c90b8bdf931426d1926b21b0316a86b4b4e4 |
|
10-Apr-2014 |
Gilad Arnold <garnold@chromium.org> |
Rename MockSystemState into FakeSystemState. This class is no longer a mock. The change also includes renaming the appropriate files and the instances of this class. BUG=chromium:358278 TEST=Unit tests. Change-Id: Ifc20ead0d624eddf8827a6e6f39cd9b9207dcabf Reviewed-on: https://chromium-review.googlesource.com/194088 Reviewed-by: Gilad Arnold <garnold@chromium.org> Tested-by: Gilad Arnold <garnold@chromium.org> Commit-Queue: David Zeuthen <zeuthen@chromium.org>
/system/update_engine/fake_system_state.h
|