Bug 1442378 - part 4 - properly record omni.ja sizes for desktop platforms; r=jmaher
authorNathan Froyd <froydnj@mozilla.com>
Fri, 02 Mar 2018 08:34:39 -0500
changeset 406277 0cf8762fe6d9c8b6eeb9a855a592bba32710b0b9
parent 406276 a66af1896deac72a3d1153f261ef3443f66e2db2
child 406278 387dadb053283c2d8a13435dd4e3f3c88811469a
push id100396
push usernfroyd@mozilla.com
push dateFri, 02 Mar 2018 13:34:58 +0000
treeherdermozilla-inbound@387dadb05328 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjmaher
bugs1442378
milestone60.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1442378 - part 4 - properly record omni.ja sizes for desktop platforms; r=jmaher Unlike Android installers, installers for desktop versions of Firefox contain two copies of omni.ja, and the code to check for omni.ja was ignoring both copies. Let's special-case omni.ja so we get better numbers for our desktop platforms.
testing/mozharness/mozharness/mozilla/building/buildbase.py
--- a/testing/mozharness/mozharness/mozilla/building/buildbase.py
+++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py
@@ -1599,16 +1599,23 @@ or run without that action (ie: --no-{ac
         if os.path.exists(installer):
             installer_size = self.query_filesize(installer)
             self.info('Size of %s: %s bytes' % (packageName, installer_size))
             try:
                 subtests = {}
                 for path, size in paths_with_sizes(installer):
                     name = os.path.basename(path)
                     if name in interests:
+                        # We have to be careful here: desktop Firefox installers
+                        # contain two omni.ja files: one for the general runtime,
+                        # and one for the browser proper.
+                        if name == 'omni.ja':
+                            containing_dir = os.path.basename(os.path.dirname(path))
+                            if containing_dir == 'browser':
+                                name = 'browser-omni.ja'
                         if name in subtests:
                             # File seen twice in same archive;
                             # ignore to avoid confusion.
                             subtests[name] = None
                         else:
                             subtests[name] = size
                 for name in subtests:
                     if subtests[name] is not None: