From 1304f4dc39ea8ab90fb4733def525037f0cb445b Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Wed, 10 May 2023 10:48:44 -0400 Subject: [PATCH] Update apkdiff.py to return non-zero exit codes on mismatch. --- reproducible-builds/apkdiff/apkdiff.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/reproducible-builds/apkdiff/apkdiff.py b/reproducible-builds/apkdiff/apkdiff.py index c48fed646a..72b6a67e8e 100755 --- a/reproducible-builds/apkdiff/apkdiff.py +++ b/reproducible-builds/apkdiff/apkdiff.py @@ -10,16 +10,15 @@ class ApkDiff: "META-INF/MANIFEST.MF", "META-INF/CERTIFIC.SF", "META-INF/CERTIFIC.RSA", + "META-INF/TEXTSECU.RSA", + "META-INF/TEXTSECU.SF", ] def compare(self, firstApk, secondApk): firstZip = ZipFile(firstApk, 'r') secondZip = ZipFile(secondApk, 'r') - if self.compareEntryNames(firstZip, secondZip) and self.compareEntryContents(firstZip, secondZip) == True: - print("APKs match!") - else: - print("APKs don't match!") + return self.compareEntryNames(firstZip, secondZip) and self.compareEntryContents(firstZip, secondZip) == True def compareEntryNames(self, firstZip, secondZip): firstNameListSorted = sorted(firstZip.namelist()) @@ -73,4 +72,9 @@ if __name__ == '__main__': print("Usage: apkdiff ") sys.exit(1) - ApkDiff().compare(sys.argv[1], sys.argv[2]) + if ApkDiff().compare(sys.argv[1], sys.argv[2]): + print("APKs match!") + sys.exit(0) + else: + print("APKs don't match!") + sys.exit(1)