OSDN Git Service

Skip copying existing vendor images
authorTianjie Xu <xunchang@google.com>
Tue, 28 Jun 2016 21:34:03 +0000 (14:34 -0700)
committerTianjie Xu <xunchang@google.com>
Wed, 29 Jun 2016 18:32:30 +0000 (18:32 +0000)
add_img_to_target_files.py has an option of "-a" to add missing
images only. Under this option, the script should skip copying
the radio images for A/B devices when given image exists already
under "IMAGES/".

Test: Run the command on an A/B device, the existing radio images under "IMAGES/" don't get overwritten; and missing images are added correctly.
Bug: 29608905
Change-Id: Ie034b85a5d777d53e367f99470cea4d19cb1aaaf

tools/releasetools/add_img_to_target_files.py

index 02e940e..5730019 100755 (executable)
@@ -396,12 +396,18 @@ def AddImagesToTargetFiles(filename):
   # For devices using A/B update, copy over images from RADIO/ and/or
   # VENDOR_IMAGES/ to IMAGES/ and make sure we have all the needed
   # images ready under IMAGES/. All images should have '.img' as extension.
+  banner("radio")
   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"
+      prebuilt_path = os.path.join(OPTIONS.input_tmp, "IMAGES", img_name)
+      if os.path.exists(prebuilt_path):
+        print "%s already exists, no need to overwrite..." % (img_name,)
+        continue
+
       img_radio_path = os.path.join(OPTIONS.input_tmp, "RADIO", img_name)
       img_vendor_dir = os.path.join(
         OPTIONS.input_tmp, "VENDOR_IMAGES")