Commit Graph

5648 Commits

Author SHA1 Message Date
Tao Bao d7d087f31c Merge "otautil: Only build the needed files for host build."
am: 5818e894df

Change-Id: I2c9bf65f56c0bf9fe1d912717ef7952768d9a664
2018-05-04 09:30:47 -07:00
Tao Bao 5818e894df Merge "otautil: Only build the needed files for host build." 2018-05-04 16:08:18 +00:00
Tao Bao 13446c032b otautil: Only build the needed files for host build.
This avoids unnecessarily breaking mac build.

Test: `mmma -j bootable/recovery` on Linux and macOS.
Change-Id: I1dc00364c895866a4757c2a43beb3432ae1e4113
2018-05-03 23:16:03 -07:00
Tao Bao 0d9ed29541 Merge "Move menu headers/items to std::vector<std::string>."
am: fb86bb2a07

Change-Id: I1bbef54e7117e8967a63290beaed70521d4de374
2018-05-03 16:21:16 -07:00
Tao Bao fb86bb2a07 Merge "Move menu headers/items to std::vector<std::string>." 2018-05-03 23:13:09 +00:00
Zhomart Mukhamejanov f3d1e58163 Merge "updater_sample: update tests"
am: 219445a320

Change-Id: I0f900f7612721b550826f0daffb030377468292b
2018-05-03 16:02:18 -07:00
Zhomart Mukhamejanov 219445a320 Merge "updater_sample: update tests" 2018-05-03 22:52:36 +00:00
Zhomart Mukhamejanov e606f6d3ff updater_sample: update tests
- fix tools/gen_update_config.py
- add tests for PayloadSpecs#forStreaming

Test: junit4
Change-Id: Ife1980c5f72944ed35500aa820b30031fc99e820
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-03 14:04:16 -07:00
Tao Bao 1fe1afe863 Move menu headers/items to std::vector<std::string>.
Test: mmma -j bootable/recovery
Test: Run recovery_unit_test on marlin.
Test: Build and boot into recovery image on angler. Check the UI that
      shows menu ('View recovery log', 'Wipe data', 'Run locale test').
Test: Start recovery with '--prompt_and_wipe_data'. Check the UI.
Change-Id: If8a4209e0bb4ca64f719f9f9465d3b3589a69cdc
2018-05-03 12:31:18 -07:00
Zhomart Mukhamejanov c36f5ff1c7 Merge "updater_sample: update ui and README, clean-up"
am: 9c544a2bc6

Change-Id: I01da369a194bdb0b4d6d698dd835ce3bf9904756
2018-05-03 10:58:13 -07:00
Zhomart Mukhamejanov 9c544a2bc6 Merge "updater_sample: update ui and README, clean-up" 2018-05-03 17:47:59 +00:00
Zhomart Mukhamejanov f7a70388ee updater_sample: update ui and README, clean-up
- ui: add text view for latest completion (error) code
- update README.md
- update MainActivity.java
- remove AbNonStreamingUpdate

Test: mmma bootable/recovery/updater_sample
Change-Id: Ie9bb64211c57d536036b04f13896e4937c392b6e
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-03 14:59:45 +00:00
android-build-prod (mdb) bcf8beaeed Merge "screen_ui: Merge Menu::Start() into its ctor."
am: 0cabcd0126

Change-Id: I739ab9b6d3aa2a52f2fd51adbf84664301f22ca6
2018-05-02 22:01:49 -07:00
android-build-prod (mdb) 0cabcd0126 Merge "screen_ui: Merge Menu::Start() into its ctor." 2018-05-03 04:54:24 +00:00
Zhomart Mukhamejanov 98837bdcd1 Merge "updater_sample: Add streaming to PayloadSpec"
am: 3a79b36377

Change-Id: I576233f982e2dea6abeb9267ffddc2760dad4d4e
2018-05-02 20:27:20 -07:00
Zhomart Mukhamejanov 3a79b36377 Merge "updater_sample: Add streaming to PayloadSpec" 2018-05-03 03:22:45 +00:00
Tao Bao e02a5b248b screen_ui: Merge Menu::Start() into its ctor.
Since we instantiate a Menu object each time for a given set of
header/items, we don't have a use case of re-populating an existing Menu
with different data (which is what Menu::Start() does).

Test: mmma -j bootable/recovery
Test: Run recovery_unit_test on marlin.
Test: Build and boot into recovery image on angler. Check the UI.
Change-Id: Iaa2ba9d406ebd74c015e43198c17c5335b38df53
2018-05-02 19:30:15 -07:00
android-build-prod (mdb) a9d78d45d6 Merge "screen_ui: Use std::string in DrawTextLine() and siblings."
am: b4ded4a6ce

Change-Id: I02fad9395511c716d790f1a1e3f5065532a8433b
2018-05-02 19:16:59 -07:00
android-build-prod (mdb) b4ded4a6ce Merge "screen_ui: Use std::string in DrawTextLine() and siblings." 2018-05-03 02:12:48 +00:00
Tao Bao 93e46ad426 screen_ui: Use std::string in DrawTextLine() and siblings.
Test: mmma -j bootable/recovery
Test: Build and boot into recovery image on angler. Check the UI.
Test: Repeat the same test on devices using wearable UI.
Change-Id: I1a67ff4ae8de4d7a8dc66326cf07f95c89e95152
2018-05-02 15:32:48 -07:00
Tao Bao 30f2775b37 Merge "screen_ui: Drop the dependency on common.h."
am: 738a4258d8

Change-Id: I337db6f14a9a7dd6394040026e004eec717cf487
2018-05-02 14:41:24 -07:00
Tao Bao 738a4258d8 Merge "screen_ui: Drop the dependency on common.h." 2018-05-02 21:28:19 +00:00
Tao Bao 1d156b9882 screen_ui: Drop the dependency on common.h.
Remove the use of fopen_path() in screen_ui.cpp, as this is the only
place that requires the dependency on common.h. The mounting work should
be done by the caller.

Also change the parameter in RecoveryUI::ShowFile() from const char* to
const std::string&.

Test: mmma -j bootable/recovery
Test: Build and boot into recovery image on angler. Choose 'View
      recovery logs'.
Change-Id: I8e63f14a8e2b12b856e5a92476e4226cd6ea39fb
2018-05-02 12:46:21 -07:00
Zhomart Mukhamejanov da7e237596 updater_sample: Add streaming to PayloadSpec
PayloadSpec
- add streaming generator and tests
- fix sample.json
- fix tests
- rename PackagePropertyFiles to PackageFiles, it has info
  not only about property files, and new name is shorter

Bug: 77148467
Test: `mmma -j bootable/recovery/updater_sample`
Change-Id: I9c1206c07c37183f13d3c25940f12981ca85b1b4
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-02 12:40:49 -07:00
Tao Bao a2f44ebd09 Merge "Add ScreenRecoveryUI::ShowMenu()."
am: cac3ec3513

Change-Id: Iaad9bc980d8db3a02dbae77af234cf1aefccdbd1
2018-05-01 13:40:29 -07:00
Tao Bao cac3ec3513 Merge "Add ScreenRecoveryUI::ShowMenu()." 2018-05-01 20:32:37 +00:00
Zhomart Mukhamejanov 013098f6d2 Merge "updater_sample: add FileDownloader"
am: 5c119482b3

Change-Id: I4e2da88f762df0c3fa63a1b5c6c2389c7683291d
2018-05-01 12:14:32 -07:00
Zhomart Mukhamejanov 0b54d77832 Merge "updater_sample: Improve UpdateConfig"
am: af5958818a

Change-Id: Ia8fd285ece0dec638273abf3c531fbd1c052becb
2018-05-01 12:10:32 -07:00
Zhomart Mukhamejanov 5c119482b3 Merge "updater_sample: add FileDownloader" 2018-05-01 19:08:59 +00:00
Zhomart Mukhamejanov 93535dd033 updater_sample: add FileDownloader
Test: unit tests

Change-Id: I10933e7172d7ebc34c7cf5e4274625d7b8399246
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-01 12:08:18 -07:00
Zhomart Mukhamejanov af5958818a Merge "updater_sample: Improve UpdateConfig" 2018-05-01 19:05:22 +00:00
Tao Bao 17f6c1b041 Merge "recovery: Split main() into recovery_main.cpp."
am: 0204e88073

Change-Id: I474502fc51b28b3e69e9638c82534bfea62903a7
2018-05-01 11:04:46 -07:00
Tao Bao 0204e88073 Merge "recovery: Split main() into recovery_main.cpp." 2018-05-01 17:54:40 +00:00
Tao Bao 3aec6965bf Add ScreenRecoveryUI::ShowMenu().
From caller's PoV, RecoveryUI::{Start,Select,End}Menu should always be
used together, i.e. to show a menu and get user's selection. This CL
provides ShowMenu() as one-stop service (which is based on
get_menu_selection() from recovery.cpp).

Also move RecoveryUI::{Start,Select,End}Menu into ScreenRecoveryUI, with
a dropped access level from public to protected.

Due to the dependency on recovery / librecovery refactoring, will add
testcases in follow-up CLs.

Test: Build and boot into recovery image. Check the menus (main menu,
      'View recovery logs', 'Wipe data/factory reset').
Change-Id: Ie17aa78144871a12affd6f9075e045f76608a0ba
2018-05-01 10:27:40 -07:00
Zhomart Mukhamejanov 963e3eeb00 updater_sample: Improve UpdateConfig
UpdateConfig:
- constant names changed
- added parsing streaming metadata
- added InnerFile to describe a file in zip

Android.mk
- added guava

tests fixed

Test: using junit4

Change-Id: Ibe3c8a3bde20259b0eea9a79aca4b22ed7b048f4
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-01 10:24:57 -07:00
Tao Bao 6d99d4b457 recovery: Split main() into recovery_main.cpp.
This prepares for moving more codes from recovery into librecovery, so
that they will become more easily testable. recovery_main.cpp will be
the source code for recovery module, with the rest moved into
librecovery. recovery_main.cpp mainly does the initializations, such as
setting up the logger.

Test: mmma -j bootable/recovery
Test: recovery_component_test
Test: Build and boot into recovery image on marlin.
Change-Id: I8e846524546b6f3f0e32ed869e851f62261eef23
Merged-In: I8e846524546b6f3f0e32ed869e851f62261eef23
2018-05-01 09:48:00 -07:00
Tao Bao 7e61191258 Merge "Drop '#include "ui.h"' from device.h."
am: 2de12da142

Change-Id: I339621dbc9c8cebe78fa7bcf30e9c7e070e649af
2018-04-30 19:04:03 -07:00
Tao Bao 2de12da142 Merge "Drop '#include "ui.h"' from device.h." 2018-05-01 01:54:45 +00:00
Tao Bao c16fd8a931 Drop '#include "ui.h"' from device.h.
We don't need the dependency in the header.

Test: mmma -j bootable/recovery
Change-Id: I03741ae7911a7e8bf1284b2821cf986ca0ab434e
2018-04-30 17:15:17 -07:00
Tao Bao 040674586b Merge changes I78839ed4,I75ac0e26
am: e4d65b681a

Change-Id: I303e20e6d7f36a355f6cca9798c3c598fe10777b
2018-04-30 12:53:55 -07:00
Tao Bao e4d65b681a Merge changes I78839ed4,I75ac0e26
* changes:
  recovery: Move a few constants closer to their uses.
  recovery: Fix the return value when failing to convert to FBE.
2018-04-30 19:39:42 +00:00
Tao Bao aac9d9fcf8 recovery: Move a few constants closer to their uses.
Test: mmma -j bootable/recovery
Change-Id: I78839ed487ef41b4eaa3787cb7b4bf33fb0d164a
2018-04-30 10:57:36 -07:00
Tao Bao 406a6ff5e6 recovery: Fix the return value when failing to convert to FBE.
Test: Build and flash aosp_angler-userdebug. Choose 'Convert to file
      encryption' from Developer Options. Converting to FBE still works.
Change-Id: I75ac0e266af2d00bfaff0664f8bcee74a5f16b41
2018-04-30 10:55:59 -07:00
android-build-prod (mdb) cddf5dbf67 Merge "Merge libmounts into libotautil."
am: 686353215f

Change-Id: Id8592b7ac8fe83406928c92f24dbcc88fdaf8ca9
2018-04-28 09:52:14 -07:00
android-build-prod (mdb) 686353215f Merge "Merge libmounts into libotautil." 2018-04-28 16:46:19 +00:00
Tao Bao 9a319f01f8 Merge libmounts into libotautil.
Export its header (mounts.h) from there, and drop the dot dot dependency
from libupdater / updater.

Test: mmma bootable/recovery
Test: recovery_component_test
Change-Id: Ic26a6b9b78a34dbe1f178b138f3abaafffbec44c
2018-04-27 21:13:57 -07:00
Tao Bao 29c9690864 Merge "recovery: Revoke (most of) short options."
am: 3de3756081

Change-Id: I5be31e78b5531412405a457ed6bd042160f7e014
2018-04-27 16:15:44 -07:00
Tao Bao 3de3756081 Merge "recovery: Revoke (most of) short options." 2018-04-27 23:09:31 +00:00
Tao Bao f9f17347c8 recovery: Revoke (most of) short options.
`recovery` is not a command line tool, and these short options don't
have the common meanings that are used elsewhere.

In the platform code, we're not actively using the short forms.
 - bootable/recovery/uncrypt/uncrypt.cpp
 - bootable/recovery/updater/install.cpp
 - frameworks/base/core/java/android/os/RecoverySystem.java
 - system/core/adb/services.cpp
 - system/core/init/builtins.cpp
 - system/update_engine/hardware_android.cc
 - system/vold/cryptfs.cpp
(Callers must have used libbootloader_message.)

'--show_text' and '--just_exit' are not that obvious from the initial
commit messages. They appear to be used by vendor code (e.g.
'--show_text' is optionally used by bootloader, as in the noted bug). So
this CL keeps them as is for now.

Test: `mmma -j bootable/recovery`
Test: Check the code search for possible callers to recovery.
Change-Id: I8a87f5fb50131d647dfc8290381ca47a60f543fa
2018-04-27 12:34:14 -07:00
Tianjie Xu 7ad3e673ba Merge "Save the target file when applypatch tests fail"
am: 957c1abfba

Change-Id: I100dd5ba4fb2c3bd4a29bd8759dcd65f03afbe50
2018-04-27 09:53:47 -07:00