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

Commit a43b4c49 authored by Dennis Shen's avatar Dennis Shen Committed by Android (Google) Code Review
Browse files

Merge "Update deapexer call to explictly use blkid" into tm-mainline-prod

parents 1d5facf5 bee7473f
Loading
Loading
Loading
Loading
+10 −16
Original line number Diff line number Diff line
@@ -65,6 +65,8 @@ class ApexApkSigner(object):
        OPTIONS.search_path, "bin", "debugfs_static")
    self.fsckerofs_path = os.path.join(
        OPTIONS.search_path, "bin", "fsck.erofs")
    self.blkid_path = os.path.join(
        OPTIONS.search_path, "bin", "blkid")
    self.avbtool = avbtool if avbtool else "avbtool"
    self.sign_tool = sign_tool

@@ -82,13 +84,8 @@ class ApexApkSigner(object):
          "Couldn't find location of debugfs_static: " +
          "Path {} does not exist. ".format(self.debugfs_path) +
          "Make sure bin/debugfs_static can be found in -p <path>")
    if not os.path.exists(self.fsckerofs_path):
      raise ApexSigningError(
          "Couldn't find location of fsck.erofs: " +
          "Path {} does not exist. ".format(self.fsckerofs_path) +
          "Make sure bin/fsck.erofs can be found in -p <path>")
    list_cmd = ['deapexer', '--debugfs_path', self.debugfs_path,
                '--fsckerofs_path', self.fsckerofs_path, 'list', self.apex_path]
                'list', self.apex_path]
    entries_names = common.RunAndCheckOutput(list_cmd).split()
    apk_entries = [name for name in entries_names if name.endswith('.apk')]

@@ -128,9 +125,15 @@ class ApexApkSigner(object):
          "Couldn't find location of fsck.erofs: " +
          "Path {} does not exist. ".format(self.fsckerofs_path) +
          "Make sure bin/fsck.erofs can be found in -p <path>")
    if not os.path.exists(self.blkid_path):
      raise ApexSigningError(
          "Couldn't find location of blkid: " +
          "Path {} does not exist. ".format(self.blkid_path) +
          "Make sure bin/blkid can be found in -p <path>")
    payload_dir = common.MakeTempDir()
    extract_cmd = ['deapexer', '--debugfs_path', self.debugfs_path,
                   '--fsckerofs_path', self.fsckerofs_path, 'extract',
                   '--fsckerofs_path', self.fsckerofs_path,
                   '--blkid_path', self.blkid_path, 'extract',
                   self.apex_path, payload_dir]
    common.RunAndCheckOutput(extract_cmd)

@@ -430,7 +433,6 @@ def SignCompressedApex(avbtool, apex_file, payload_key, container_key,
    The path to the signed APEX file.
  """
  debugfs_path = os.path.join(OPTIONS.search_path, 'bin', 'debugfs_static')
  fsckerofs_path = os.path.join(OPTIONS.search_path, 'bin', 'fsck.erofs')

  # 1. Decompress original_apex inside compressed apex.
  original_apex_file = common.MakeTempFile(prefix='original-apex-',
@@ -438,7 +440,6 @@ def SignCompressedApex(avbtool, apex_file, payload_key, container_key,
  # Decompression target path should not exist
  os.remove(original_apex_file)
  common.RunAndCheckOutput(['deapexer', '--debugfs_path', debugfs_path,
                            '--fsckerofs_path', fsckerofs_path,
                            'decompress', '--input', apex_file,
                            '--output', original_apex_file])

@@ -502,9 +503,7 @@ def SignApex(avbtool, apex_data, payload_key, container_key, container_pw,
    output_fp.write(apex_data)

  debugfs_path = os.path.join(OPTIONS.search_path, 'bin', 'debugfs_static')
  fsckerofs_path = os.path.join(OPTIONS.search_path, 'bin', 'fsck.erofs')
  cmd = ['deapexer', '--debugfs_path', debugfs_path,
         '--fsckerofs_path', fsckerofs_path,
         'info', '--print-type', apex_file]

  try:
@@ -577,10 +576,6 @@ def GetApexInfoFromTargetFiles(input_file, partition, compressed_only=True):
  if OPTIONS.search_path:
    debugfs_path = os.path.join(OPTIONS.search_path, "bin", "debugfs_static")

  fsckerofs_path = "fsck.erofs"
  if OPTIONS.search_path:
    fsckerofs_path = os.path.join(OPTIONS.search_path, "bin", "fsck.erofs")

  deapexer = 'deapexer'
  if OPTIONS.search_path:
    deapexer_path = os.path.join(OPTIONS.search_path, "bin", "deapexer")
@@ -601,7 +596,6 @@ def GetApexInfoFromTargetFiles(input_file, partition, compressed_only=True):
    # Check if the file is compressed or not
    apex_type = RunAndCheckOutput([
        deapexer, "--debugfs_path", debugfs_path,
        "--fsckerofs_path", fsckerofs_path,
        'info', '--print-type', apex_filepath]).rstrip()
    if apex_type == 'COMPRESSED':
      apex_info.is_compressed = True
+4 −0
Original line number Diff line number Diff line
@@ -164,6 +164,10 @@ def MergeDexopt(temp_dir, output_target_files_dir):
          'deapexer',
          '--debugfs_path',
          'debugfs_static',
          '--blkid_path',
          'blkid',
          '--fsckerofs_path',
          'fsck.erofs',
          'extract',
          apex,
          apex_extract_dir,