Fix the signing error in gsi_arm64 builds
After adding 'PREBUILT_IMAGES/pvmfw.img' into gsi_arm64,
the signing process fails:
common.ExternalError: Failed to run command
'['avbtool', 'extract_public_key', '--key', 'PRESIGNED',
'--output', '/tmp/avb-8z8y8_xn.avbpubkey']' (exit code 1):
~/codebase/android15-tests-dev/otatools/bin/avbtool:
Error getting public key: b'Could not open file or uri for loading
private key of public key from PRESIGNED: No such file or directory\n'
This is because that apex files are pre-signed in gsi_arm64
and the script currently tries to extract public key from the
non-existing 'PRESIGNED' file.
Fix this by obtaining the public key from 'apex_pubkey' of
'SYSTEM/apex/com.android.virt.apex'.
See https://source.android.com/docs/core/ota/apex#apex-format
for details.
Bug: 384813199
Test: m sign_target_files_apks
Test: sign_target_files_apks --allow_gsi_debug_sepolicy \
--extra_apex_payload_key com.android.virt.apex= \
-e com.android.virt.apex= \
gsi_arm64-target_files-${build_id}.zip signed.zip
Test: `zipinfo signed.zip | grep pvmfw`, checks pvmfw.img is included.
Change-Id: I551e14fa6a0c63e3cef334b953f670cf9c465e10
Loading
Please register or sign in to comment