aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Zongker <>2009-04-14 12:33:31 -0700
committerThe Android Open Source Project <initial-contribution@android.com>2009-04-14 12:33:31 -0700
commit8c61c301b278974dc3e5569e94b9924acbf388c7 (patch)
treec0c98e19e26b9e53e8d0245d732200e319bb700a
parenta7bfb4f382af7c73771282fb395d47f5f374887a (diff)
downloadbuild-8c61c301b278974dc3e5569e94b9924acbf388c7.tar.gz
AI 146193: Fix signing script so keys specified in -e options get passed
through the key map. Clarify the help for the -e option to make clear this should happen. (This change doesn't affect device code.) Automated import of CL 146193
-rwxr-xr-xtools/releasetools/sign_target_files_apks10
1 files changed, 7 insertions, 3 deletions
diff --git a/tools/releasetools/sign_target_files_apks b/tools/releasetools/sign_target_files_apks
index a87d198095..b63292436f 100755
--- a/tools/releasetools/sign_target_files_apks
+++ b/tools/releasetools/sign_target_files_apks
@@ -26,8 +26,10 @@ Usage: sign_target_files_apks [flags] input_target_files output_target_files
-e (--extra_apks) <name,name,...=key>
Add extra APK name/key pairs as though they appeared in
- apkcerts.zip. Option may be repeated to give multiple extra
- packages.
+ apkcerts.txt (so mappings specified by -k and -d are applied).
+ Keys specified in -e override any value for that app contained
+ in the apkcerts.txt file. Option may be repeated to give
+ multiple extra packages.
-k (--key_mapping) <src_key=dest_key>
Add a mapping from the key name as specified in apkcerts.txt (the
@@ -68,7 +70,7 @@ OPTIONS.key_map = {}
def GetApkCerts(tf_zip):
- certmap = OPTIONS.extra_apks.copy()
+ certmap = {}
for line in tf_zip.read("META/apkcerts.txt").split("\n"):
line = line.strip()
if not line: continue
@@ -77,6 +79,8 @@ def GetApkCerts(tf_zip):
if not m:
raise SigningError("failed to parse line from apkcerts.txt:\n" + line)
certmap[m.group(1)] = OPTIONS.key_map.get(m.group(2), m.group(2))
+ for apk, cert in OPTIONS.extra_apks.iteritems():
+ certmap[apk] = OPTIONS.key_map.get(cert, cert)
return certmap