Add care_map to target_files package
Generate a new file containing care_data of system (and vendor)
partition, and add it under META/ of target file package. For
A/B update, copy this file to OTA package for later use by
update_verifier.
Bug: 27175949
Change-Id: I90bb972703afaeb94bc3efe718fd81b1cfbcabcc
diff --git a/tools/releasetools/common.py b/tools/releasetools/common.py
index 422ba43..d7f8b16 100644
--- a/tools/releasetools/common.py
+++ b/tools/releasetools/common.py
@@ -259,11 +259,18 @@
makeint("boot_size")
makeint("fstab_version")
- if d.get("no_recovery", False) == "true":
- d["fstab"] = None
- else:
+ system_root_image = d.get("system_root_image", None) == "true"
+ if d.get("no_recovery", None) != "true":
+ recovery_fstab_path = "RECOVERY/RAMDISK/etc/recovery.fstab"
d["fstab"] = LoadRecoveryFSTab(read_helper, d["fstab_version"],
- d.get("system_root_image", False))
+ recovery_fstab_path, system_root_image)
+ elif d.get("recovery_as_boot", None) == "true":
+ recovery_fstab_path = "BOOT/RAMDISK/etc/recovery.fstab"
+ d["fstab"] = LoadRecoveryFSTab(read_helper, d["fstab_version"],
+ recovery_fstab_path, system_root_image)
+ else:
+ d["fstab"] = None
+
d["build.prop"] = LoadBuildProp(read_helper)
return d
@@ -286,7 +293,8 @@
d[name] = value
return d
-def LoadRecoveryFSTab(read_helper, fstab_version, system_root_image=False):
+def LoadRecoveryFSTab(read_helper, fstab_version, recovery_fstab_path,
+ system_root_image=False):
class Partition(object):
def __init__(self, mount_point, fs_type, device, length, device2, context):
self.mount_point = mount_point
@@ -297,9 +305,9 @@
self.context = context
try:
- data = read_helper("RECOVERY/RAMDISK/etc/recovery.fstab")
+ data = read_helper(recovery_fstab_path)
except KeyError:
- print "Warning: could not find RECOVERY/RAMDISK/etc/recovery.fstab"
+ print "Warning: could not find {}".format(recovery_fstab_path)
data = ""
if fstab_version == 1: