releasetools: Pack updatable images into IMAGES/ for A/B update.
Vendor-specific images (radio, bootloader and etc) used to stay in RADIO/ in target_files zip. A/B updater expects them to be available under IMAGES/. Make a copy for such images when calling add_img_to_target_files.py. We cannot move them directly from RADIO/ to IMAGES/, because we will delete everything under IMAGES/ when signing for release. Bug: 25674625 Change-Id: I977c879d0ff7e45c83b3f5c63844a5b135caa383
This commit is contained in:
@@ -319,6 +319,23 @@ def AddImagesToTargetFiles(filename):
|
||||
banner("cache")
|
||||
AddCache(output_zip)
|
||||
|
||||
# For devices using A/B update, copy over images from RADIO/ to IMAGES/ and
|
||||
# make sure we have all the needed images ready under IMAGES/.
|
||||
ab_partitions = os.path.join(OPTIONS.input_tmp, "META", "ab_partitions.txt")
|
||||
if os.path.exists(ab_partitions):
|
||||
with open(ab_partitions, 'r') as f:
|
||||
lines = f.readlines()
|
||||
for line in lines:
|
||||
img_name = line.strip() + ".img"
|
||||
img_radio_path = os.path.join(OPTIONS.input_tmp, "RADIO", img_name)
|
||||
if os.path.exists(img_radio_path):
|
||||
common.ZipWrite(output_zip, img_radio_path,
|
||||
os.path.join("IMAGES", img_name))
|
||||
|
||||
# Zip spec says: All slashes MUST be forward slashes.
|
||||
img_path = 'IMAGES/' + img_name
|
||||
assert img_path in output_zip.namelist(), "cannot find " + img_name
|
||||
|
||||
common.ZipClose(output_zip)
|
||||
|
||||
def main(argv):
|
||||
|
Reference in New Issue
Block a user