Commit Graph

7754 Commits

Author SHA1 Message Date
Tianjie Xu 58c716601e Merge "Add Updater class and remove UpdaterInfo" am: 19737a5b38
am: 93667742fe

Change-Id: I80f09705d083e4566ec4b60ebcf0ef711fe48845
2019-05-09 11:08:05 -07:00
Tianjie Xu 93667742fe Merge "Add Updater class and remove UpdaterInfo"
am: 19737a5b38

Change-Id: If5ec40a583441f54b6bb012cd9f501f14d4f3b86
2019-05-09 10:51:05 -07:00
Tianjie Xu 19737a5b38 Merge "Add Updater class and remove UpdaterInfo" 2019-05-09 17:33:52 +00:00
Tianjie Xu 58d59129e1 Add Updater class and remove UpdaterInfo
The UpdaterInfo class is merely a collection of pointers and POD types.
We can replace it with a Updater class that has the ownership of the
resources. This also makes this class extensible as we plan to add more
functionality in the host simulator.

Bug: 131911365
Test: unit tests pass, run an update on cuttlefish and check last_install
Change-Id: I07ca5963bbee8ae3cb85ccc184464910aa73d4e4
2019-05-08 23:07:04 -07:00
Elliott Hughes e76cedf588 Merge "Track libziparchive API change." am: 9423d2f6b7
am: 0d24715223

Change-Id: I1aabd53cfe7a42773d22a6192f89340261d29ff3
2019-05-06 17:39:33 -07:00
Elliott Hughes 0d24715223 Merge "Track libziparchive API change."
am: 9423d2f6b7

Change-Id: I611e235693bd7b060f472280f94e89e2f52a2ea0
2019-05-06 17:14:06 -07:00
Elliott Hughes 9423d2f6b7 Merge "Track libziparchive API change." 2019-05-06 23:45:16 +00:00
Colin Cross b0270e043a Merge "Disable libbootloader_message for darwin" am: 12262d568a
am: 5a25636f34

Change-Id: I5c3052596556bb4ba79cc2382114f1d117de1109
2019-05-06 14:30:07 -07:00
Colin Cross 5a25636f34 Merge "Disable libbootloader_message for darwin"
am: 12262d568a

Change-Id: Ic3016f69893c4f5792f30be1edf341e6d6338297
2019-05-06 14:25:08 -07:00
Treehugger Robot 12262d568a Merge "Disable libbootloader_message for darwin" 2019-05-06 21:09:10 +00:00
Elliott Hughes a86dddbfa5 Track libziparchive API change.
Bug: http://b/129068177
Test: treehugger
Change-Id: Ie5b2b0cff087f2e9e65a4e77c187e3173357f3ad
2019-05-06 10:28:14 -07:00
Colin Cross fb68d38fba Disable libbootloader_message for darwin
libfstab is not built for darwin, don't build libbootloader_message
either.

Bug: 131709594
Test: m PRODUCT-sdk-sdk sdk_repo
Change-Id: I6e3b04f1c3e97d5aa6ac0452bf13e714f8dae437
2019-05-06 09:49:00 -07:00
Bill Yi 1a8b3cab32 [automerger skipped] Import translations. DO NOT MERGE
am: 9681eef5ff -s ours
am skip reason: subject contains skip directive

Change-Id: Ifa001d4bfc18d81cf3da5b85d12fcccdf542a206
2019-05-04 20:15:02 -07:00
Bill Yi 9681eef5ff Import translations. DO NOT MERGE
Auto-generated-cl: translation import

Bug: 64712476
Change-Id: I4933222253f1bde2daab4726be971c6d7008a0e4
2019-05-04 18:39:11 -07:00
Elliott Hughes dec987d3da Merge "ConsumePrefix is now in libbase." am: b699b4b1cd
am: 24566cebf5

Change-Id: I31f48c68a1d55b11d7e4726ab437b4fc79ecd3b5
2019-05-03 17:48:58 -07:00
Elliott Hughes 24566cebf5 Merge "ConsumePrefix is now in libbase."
am: b699b4b1cd

Change-Id: I03b337a921882fa0c06744fb903b8e06c385f9d9
2019-05-03 17:43:25 -07:00
Elliott Hughes b699b4b1cd Merge "ConsumePrefix is now in libbase." 2019-05-04 00:03:14 +00:00
Elliott Hughes 93838f6e42 ConsumePrefix is now in libbase.
Test: treehugger
Change-Id: I2feecabb77986d3e007de1009b123c2d98454631
2019-05-03 10:33:04 -07:00
Yifan Hong 3965f65658 Merge changes from topic "cuttlefish_misc" am: be25cd21e4
am: d3916e2f1f

Change-Id: Ib4c168e8bcef0d3e390bb1aa17a0d18989fd6203
2019-05-03 09:44:25 -07:00
Yifan Hong d3916e2f1f Merge changes from topic "cuttlefish_misc"
am: be25cd21e4

Change-Id: I9f4cdb1a67c9eae1b1d55d56f40887d686b39644
2019-05-03 09:39:25 -07:00
Treehugger Robot be25cd21e4 Merge changes from topic "cuttlefish_misc"
* changes:
  libbootloader_message: host_supported.
  libbootloader_message: write recovery to any device
2019-05-03 16:09:27 +00:00
Tianjie Xu 84f6a330a0 Merge "Implement FuseBlockDataProvider" am: bfd6cf59dc
am: 15a899363e

Change-Id: I58a37b32ce5217c968471c8095d357ca5f4061b7
2019-05-02 18:50:53 -07:00
Tianjie Xu 15a899363e Merge "Implement FuseBlockDataProvider"
am: bfd6cf59dc

Change-Id: I6dd3d4d9cae5597dbaa3e880f0cbcc2e46e98809
2019-05-02 18:30:42 -07:00
Tianjie Xu bfd6cf59dc Merge "Implement FuseBlockDataProvider" 2019-05-03 00:35:58 +00:00
Yifan Hong d83070ddb9 libbootloader_message: host_supported.
Also, strlcat is not available on host, so use
std::string::operator+= instead.

Test: cuttlefish
Bug: 79094284

Change-Id: I1e69daeb522ca73f43e0c4855cf099a021ed4d47
2019-05-02 15:51:56 -07:00
Yifan Hong c784ce50e8 libbootloader_message: write recovery to any device
Test: cuttlefish
Bug: 79094284

Change-Id: If1a6460a8cbed2e2d22fa9e16e6d7ca84f4592d0
2019-05-02 15:50:15 -07:00
xunchang 311e6ca7b6 Implement FuseBlockDataProvider
Adds a fuse data provider that parses the metadata from a block map,
reads the data from the given ranges of the block device; and provides
the data to the fuse.

Bug: 127071893
Test: unit tests pass, install a package from block map
Change-Id: Ie9925ee9144e98642505b3f5e1a4a186d2b21ed0
2019-05-01 12:09:38 -07:00
Tao Bao e545dcf7c7 Merge changes I2d42f55a,Ic1b5dbf7 am: b5fe2dd00c
am: 2ea4768d6e

Change-Id: I501ab5e9041ab6984e7d597c9534e6867742698c
2019-04-30 15:42:23 -07:00
Tao Bao 2ea4768d6e Merge changes I2d42f55a,Ic1b5dbf7
am: b5fe2dd00c

Change-Id: I253e8f580cfa41a6a240cb311970a3165fd69fb0
2019-04-30 15:36:27 -07:00
Tao Bao b5fe2dd00c Merge changes I2d42f55a,Ic1b5dbf7
* changes:
  install: Install functions return InstallResult.
  install: Return bool for a few check functions.
2019-04-30 21:49:03 +00:00
Tao Bao adc99efd1c install: Install functions return InstallResult.
Test: `atest recovery_unit_test recovery_component_test`
Test: Sideload a package on taimen.
Change-Id: I2d42f55a89931ee495ea5c5d9e6b5ee1058e8e52
2019-04-30 13:58:03 -07:00
Tao Bao 36c7276cb2 install: Return bool for a few check functions.
The results from these functions have boolean semantics. They're
returning `int` prior to this CL, with some of them mixing 0 and
InstallResult.  Note that SetUpNonAbUpdateCommands() was returning
INSTALL_CORRUPT / INSTALL_ERROR / 0 prior to this change, but all the
callers handle INSTALL_CORRUPT and INSTALL_ERROR the same way.

This CL changes them to return bool instead.

Test: `mmma -j bootable/recovery`
Test: TreeHugger
Test: Sideload on taimen.
Change-Id: Ic1b5dbf79aaca68b53ab8ea2c8ba3d19f988c571
2019-04-30 13:58:03 -07:00
xunchang 0b64a17614 Support wipe command in rescue mode
am: 5a1916b9be

Change-Id: I7683fe5986cc5c82c431e8e8431a7bb02ea36682
2019-04-30 13:10:46 -07:00
Tao Bao 9df721ed91 Merge "tests: Merge recovery_component_test into recovery_unit_test." am: 865d1df0c9
am: 064ce341ee

Change-Id: I7941b9a42796bfd6404ad02fd15354c94ca4439c
2019-04-30 12:35:15 -07:00
Tao Bao 064ce341ee Merge "tests: Merge recovery_component_test into recovery_unit_test."
am: 865d1df0c9

Change-Id: I39fe185e72acd6eb934db6868df1526fdfc1614c
2019-04-30 12:30:22 -07:00
Tao Bao 865d1df0c9 Merge "tests: Merge recovery_component_test into recovery_unit_test." 2019-04-30 19:09:36 +00:00
Tao Bao 4a01f36d21 tests: Merge recovery_component_test into recovery_unit_test.
Most of the tests in component/ are in fact unit tests. And it doesn't
look practically beneficial to distinguish between the two:
- They have the same test setup;
- We always run both (recovery_unit_test and recovery_component_test)
  at the same time;
- Breaking any of them would be equally bad.

This CL merges the tests in recovery_component_test into
recovery_unit_test to save the effort to maintain both.

Test: Run recovery_unit_test on marlin (via `adb sync data`).
Test: `atest recovery_unit_test`
Change-Id: I93ff32e7219cd83425a4bcfe5613978a8dd48d75
2019-04-30 09:13:36 -07:00
Tao Bao b0c3c15639 Merge "Consolidate the codes that handle reboot/shutdown." am: 189c8f9aeb
am: 3486372d69

Change-Id: I08b9755b1493f7c658b5ea0a076a4f9b59f5fcbe
2019-04-29 15:24:38 -07:00
xunchang 5a1916b9be Support wipe command in rescue mode
Bug: 131037235
Test: unit tests pass, run `adb rescue wipe`
Change-Id: I22668f2c98fe2d9195d2561f961c28a7c08e712c
(cherry picked from commit fedeef6f6d)
2019-04-29 15:21:23 -07:00
Tao Bao 3486372d69 Merge "Consolidate the codes that handle reboot/shutdown."
am: 189c8f9aeb

Change-Id: I4bf9b921c241b2c062c452ed38a0215600e6ec98
2019-04-29 15:19:32 -07:00
Tao Bao 189c8f9aeb Merge "Consolidate the codes that handle reboot/shutdown." 2019-04-29 21:53:41 +00:00
Tao Bao 93f65f6df7 [automerger skipped] Parse BCB command to enter rescue mode.
am: 75321ade87 -s ours
am skip reason: change_id I5b7de9dfd898ed8e14bea0d4ad7385a9bae26e94 with SHA1 d9cb014d43 is in history

Change-Id: I5cf072d9b82c58e307c104257a12b3c45455d2f1
2019-04-29 14:26:37 -07:00
Tao Bao f51f548c63 [automerger skipped] minadbd: Support adb reboot under sideload/rescue modes.
am: 7b9b7db877 -s ours
am skip reason: change_id I84daf63e3360b7b4a0af5e055149a4f54e10ba90 with SHA1 10f441a9db is in history

Change-Id: I77fba90b8a5506ff4754bee0b6dd569efe015685
2019-04-29 14:26:27 -07:00
xunchang d2ec7c8f79 [automerger skipped] Add test for minadbd
am: 23f15fcfaf -s ours
am skip reason: change_id I2f073b701b25d7f1aafc59868a7a91a8cbefaf49 with SHA1 9c04eb46b7 is in history

Change-Id: I3500aab156ea8cde0ce18d277a06bf6550f1e677
2019-04-29 14:26:18 -07:00
Tao Bao 00dcd3fbc1 [automerger skipped] minadbd: Support rescue install and getprop commands.
am: e5c6446a10 -s ours
am skip reason: change_id Ibc25daf9fd13f7002e54789f67aaf85d06976bb8 with SHA1 ed717ca17d is in history

Change-Id: Icc2738f1cbc67ea9a1a23dcc7b96a3bab5c0c8eb
2019-04-29 14:26:08 -07:00
Tao Bao ff3f9c3d79 [automerger skipped] Remove the FD parameter from FuseDataProvider ctor.
am: 178cdd4f5c -s ours
am skip reason: change_id I106bbaad05201227bbc5fe28890bbbb06fdcb67e with SHA1 2be9737cf4 is in history

Change-Id: I70d9a3f1ad8b1defc3435a4c16820702524481f5
2019-04-29 14:25:59 -07:00
Tao Bao ee2b4024bf [automerger skipped] Allow entering rescue mode via recovery UI.
am: 378bfbfc5c -s ours
am skip reason: change_id I913dbdbcffd3179e6fa72ca862f74ca8f1364b02 with SHA1 c6dc325e88 is in history

Change-Id: I44775c08042bbc949966fe828a031965e989432f
2019-04-29 14:25:50 -07:00
Tao Bao 782dcc1996 Consolidate the codes that handle reboot/shutdown.
Test: Choose `Reboot system now`, `Power off`, `Reboot to bootloader`
      from recovery UI respectively.
Test: `adb reboot recovery` while under sideload mode.
Change-Id: I0f3d55b80b472178ea4f6970b29cd9df0778b639
2019-04-29 12:12:25 -07:00
Tao Bao 44e39cfd15 Merge "Add install/wipe_device.cpp." am: 40ccbe3324
am: a4993ce078

Change-Id: Iaf06e571a794ec8c07edc4c0acc5946735df23c9
2019-04-29 11:59:21 -07:00
Tao Bao a4993ce078 Merge "Add install/wipe_device.cpp."
am: 40ccbe3324

Change-Id: I0a7e05a6ca5d5ea8ea3e7b5bc3a83a61dc218440
2019-04-29 11:54:20 -07:00