Prior to this CL, the call to delta_generator in
check_ota_package_signature.VerifyAbOtaPayload() didn't redirect stderr.
The logs (mostly INFO) on successful verification added noise to the
normal output, which also upset the unittest result parser.
This CL captures stderr outputs from delta_generator, and will only dump
them on error.
Bug: 72884343
Test: `python -m unittest -v test_ota_from_target_files > /dev/null`
gives clean output.
Test: Inject error into delta_generator. The call to
check_ota_package_signature correctly dumps both of stdout and
stderr outputs.
Change-Id: I014a4b21bf758dcf0a4b9963259d6019851935ee
Kati's find emulator doesn't understand "| sort", so use use the make
function instead so that we can emulate the find commands.
before: *kati*: shell time (regen): 1.316989 / 187
after: *kati*: shell time (regen): 1.249748 / 184
The time has a lot of variance, the important change is the reduction in
number of shell commands. Kati has other issues with some of these (it
doesn't support find's implicit -a), which is why it only goes down by
3. I'll be fixing Kati separately to handle those cases.
Test: diff out/build-aosp_taimen.ninja before&after
Change-Id: I5c8c2993f01a8a6af84963e903a8a0c186a61e82
This prevents them from mistakenly bleeding between test targets.
Bug: 72384841
Test: make Run_TeleService_robotests
Change-Id: Ie2c047be1450420f8e27b8b45e9416e96b477b45
This makefile specifies a configuration that only starts a 64 bit
zygote (as opposed to both 64/32, as standard 64 bit builds do).
It should be inherited by products that only supports 64 bit apps.
Bug: 72810053
Test: Manual, using product in https://android-review.googlesource.com/608276
Change-Id: Ib88eccf8d4c575bfd93d6edb130348aeca4ae3f8
When calling 'openssl x509 -pubkey' to extract the public key from a
certificate, openssl 1.0 and 1.1 handle the '-out' parameter
differently. openssl 1.0 doesn't write the output into the specified
filename, which leads to the payload verification failure in
check_ota_package_signature.VerifyAbOtaPayload(). This CL addresses
the issue by always collecting the output from stdout instead.
It also refactors the two copies into common.ExtractPublicKey(), and
adds unittest. get_testdata_dir() is moved into test_utils.py that holds
common utils for running the unittests.
Bug: 72884343
Test: python -m unittest test_common
Test: python -m unittest test_ota_from_target_files
Test: Run sign_target_files_apks with '--replace_ota_keys' on marlin
target_files zip. Check the payload pubkey replacement.
Test: Trigger the tests with forrest, and tests no longer fail on
machines with openssl 1.0.1.
Change-Id: Ib0389b360f064053e9aa7cc0546d718e7b23003b
This breaks down the current WriteABOTAPackageWithBrilloScript() into
smaller and testable units, which also prepares for the work in
b/35724498.
Bug: 35724498
Test: python -m unittest test_ota_from_target_files
Test: Get identical A/B OTA packages w/ and w/o the CL.
Change-Id: I2ea45ce98e2d2baa58e94fb829b7242f6fe685a7
Merged-In: I2ea45ce98e2d2baa58e94fb829b7242f6fe685a7
(cherry picked from commit 036d721812)
This breaks down the current WriteABOTAPackageWithBrilloScript() into
smaller and testable units, which also prepares for the work in
b/35724498.
Bug: 35724498
Test: python -m unittest test_ota_from_target_files
Test: Get identical A/B OTA packages w/ and w/o the CL.
Change-Id: I2ea45ce98e2d2baa58e94fb829b7242f6fe685a7
(cherry picked from commit 036d721812)