Revert "Revert "releasetools: Use pattern filter when unzipping.""

This reverts commit a7316ce094.

This CL differs from the original CL by not unzipping RADIO/*. This is
because: a) AOSP targets don't have RADIO/ entries in the TF.zip; b)
we're not using the unzipped RADIO files (but reading them from the zip
files directly) - checked all the device-specific releasetools for
angler, bullhead, ryu, shamu, volantis, fugu, marlin and sailfish.

Test: `m dist` with AOSP targets (tested fugu and bullhead).
Change-Id: I4d0c67214ddd6202fc27c71bb79f52b5f4d40c64
This commit is contained in:
Tao Bao 2017-03-05 11:38:11 -08:00
parent 0c3e31c69b
commit 6b0b2f9db0
3 changed files with 8 additions and 4 deletions

View File

@ -235,7 +235,7 @@ class TargetFiles(object):
self.certmap = None
def LoadZipFile(self, filename):
d, z = common.UnzipTemp(filename, '*.apk')
d, z = common.UnzipTemp(filename, ['*.apk'])
try:
self.apks = {}
self.apks_by_basename = {}

View File

@ -564,7 +564,7 @@ def UnzipTemp(filename, pattern=None):
def unzip_to_dir(filename, dirname):
cmd = ["unzip", "-o", "-q", filename, "-d", dirname]
if pattern is not None:
cmd.append(pattern)
cmd.extend(pattern)
p = Run(cmd, stdout=subprocess.PIPE)
p.communicate()
if p.returncode != 0:

View File

@ -184,6 +184,8 @@ OPTIONS.payload_signer = None
OPTIONS.payload_signer_args = []
METADATA_NAME = 'META-INF/com/android/metadata'
UNZIP_PATTERN = ['IMAGES/*', 'META/*']
def MostPopularKey(d, default):
"""Given a dict, return the key corresponding to the largest
@ -2214,7 +2216,8 @@ def main(argv):
OPTIONS.extra_script = open(OPTIONS.extra_script).read()
print("unzipping target target-files...")
OPTIONS.input_tmp, input_zip = common.UnzipTemp(args[0])
OPTIONS.input_tmp, input_zip = common.UnzipTemp(
args[0], UNZIP_PATTERN if OPTIONS.block_based else None)
OPTIONS.target_tmp = OPTIONS.input_tmp
OPTIONS.info_dict = common.LoadInfoDict(input_zip, OPTIONS.target_tmp)
@ -2282,7 +2285,8 @@ def main(argv):
else:
print("unzipping source target-files...")
OPTIONS.source_tmp, source_zip = common.UnzipTemp(
OPTIONS.incremental_source)
OPTIONS.incremental_source,
UNZIP_PATTERN if OPTIONS.block_based else None)
OPTIONS.target_info_dict = OPTIONS.info_dict
OPTIONS.source_info_dict = common.LoadInfoDict(source_zip,
OPTIONS.source_tmp)