Don't bootloop in case apexd-issued rollback fails.
* Added ROLLBACK_FAILED apexd session state;
* In case rollback failed, apexd will try to proceed with activating
system apexes, which sounds like a sane default;
* Since I was there, added GTEST_SKIP for rollback tests in cases
checkpointing is enabled, as this will provide a better report when
running atest (instead of PASSED you will see SKIPPED).
Test: atest apexservice_test
Test: remove mkidr /data/apex/backup from init.rc && \
flashall && \
adb push fstab-without-checkpointing /vendor/etc/fstab.taimen && \
adb reboot && \
adb install apex.apexd_test.apex && \
adb push manifest_mismatch.apex /data/app-staging/session_35533440/base.apex && \
adb reboot && \
check session marked as ROLLBACK_FAILED
Bug: 130184133
Change-Id: I7dacd0ccc43e70b519dda9794ecdea29832bf70f
Merged-In: I7dacd0ccc43e70b519dda9794ecdea29832bf70f
(cherry picked from commit 6f87d54acc5923d14c02a3e9fadf8c6bda9a7a92)
7 files changed