Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2ea21065 authored by Doug Zongker's avatar Doug Zongker
Browse files

add metadata to OTA package in easily-parsed form

This is only for use by the tools that manipulate OTA packages; it
doesn't touch device code.

Change-Id: I1e21b24b86340d8f86c9d15b2aeb79c461f75d18
parent c3d808a7
Loading
Loading
Loading
Loading
+21 −2
Original line number Diff line number Diff line
@@ -353,12 +353,17 @@ def WriteFullOTAPackage(input_zip, output_zip):
    # change very often.
    script = edify_generator.EdifyGenerator(2)

  metadata = {"post-build": GetBuildProp("ro.build.fingerprint", input_zip),
              "pre-device": GetBuildProp("ro.product.device", input_zip),
              }

  device_specific = common.DeviceSpecificParams(
      input_zip=input_zip,
      input_version=GetRecoveryAPIVersion(input_zip),
      output_zip=output_zip,
      script=script,
      input_tmp=OPTIONS.input_tmp)
      input_tmp=OPTIONS.input_tmp,
      metadata=metadata)

  if not OPTIONS.omit_prereq:
    ts = GetBuildProp("ro.build.date.utc", input_zip)
@@ -404,6 +409,13 @@ def WriteFullOTAPackage(input_zip, output_zip):

  script.UnmountAll()
  script.AddToZip(input_zip, output_zip)
  WriteMetadata(metadata, output_zip)


def WriteMetadata(metadata, output_zip):
  common.ZipWriteStr(output_zip, "META-INF/com/android/metadata",
                     "".join(["%s=%s\n" % kv
                              for kv in sorted(metadata.iteritems())]))


class File(object):
@@ -589,13 +601,17 @@ def WriteIncrementalOTAPackage(target_zip, source_zip, output_zip):
  else:
    raise ValueError('unknown script mode "%s"' % (OPTIONS.script_mode,))

  metadata = {"pre-device": GetBuildProp("ro.product.device", source_zip),
              }

  device_specific = common.DeviceSpecificParams(
      source_zip=source_zip,
      source_version=source_version,
      target_zip=target_zip,
      target_version=target_version,
      output_zip=output_zip,
      script=script)
      script=script,
      metadata=metadata)

  print "Loading target..."
  target_data = LoadSystemFiles(target_zip)
@@ -640,6 +656,8 @@ def WriteIncrementalOTAPackage(target_zip, source_zip, output_zip):

  source_fp = GetBuildProp("ro.build.fingerprint", source_zip)
  target_fp = GetBuildProp("ro.build.fingerprint", target_zip)
  metadata["pre-build"] = source_fp
  metadata["post-build"] = target_fp

  script.Mount("MTD", "system", "/system")
  script.AssertSomeFingerprint(source_fp, target_fp)
@@ -818,6 +836,7 @@ def WriteIncrementalOTAPackage(target_zip, source_zip, output_zip):
    scirpt.AppendExtra(OPTIONS.extra_script)

  script.AddToZip(target_zip, output_zip)
  WriteMetadata(metadata, output_zip)


def main(argv):