Bug 1422010 - copy over all webkit benchmarks to talos during build. r=rwood
authorJoel Maher <jmaher@mozilla.com>
Wed, 17 Jan 2018 11:55:03 -0500
changeset 454006 e1e7990c2c49eb6274ec161242fa8838d5574546
parent 453988 6002f08576ab18bc099e7fcbdefbec04da23e3f7
child 454007 3789470ffae09b05a24f451ca4a1ea71a1ac4844
push id1648
push usermtabara@mozilla.com
push dateThu, 01 Mar 2018 12:45:47 +0000
treeherdermozilla-release@cbb9688c2eeb [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersrwood
bugs1422010
milestone59.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 1422010 - copy over all webkit benchmarks to talos during build. r=rwood
testing/mozharness/mozharness/mozilla/testing/talos.py
--- a/testing/mozharness/mozharness/mozilla/testing/talos.py
+++ b/testing/mozharness/mozharness/mozilla/testing/talos.py
@@ -418,35 +418,38 @@ class Talos(TestingMixin, MercurialScrip
                     unzip = self.query_exe('unzip')
                     unzip_cmd = [unzip, '-q', '-o', archive, '-d', src_talos_pageset]
                     self.run_command(unzip_cmd, halt_on_failure=True)
                 else:
                     self.info("pageset already available")
             else:
                 self.info("Not downloading pageset because the no-download option was specified")
 
-        # if running speedometer locally, need to copy speedometer source into talos/tests
-        if self.config.get('run_local') and 'speedometer' in self.suite:
-            self.get_speedometer_source()
+        # if running webkit tests locally, need to copy webkit source into talos/tests
+        if self.config.get('run_local') and ('speedometer' in self.suite or
+           'stylebench' in self.suite or
+           'motionmark' in self.suite):
+            self.get_webkit_source()
 
-    def get_speedometer_source(self):
-        # in production the build system auto copies speedometer source into place;
+    def get_webkit_source(self):
+        # in production the build system auto copies webkit source into place;
         # but when run locally we need to do this manually, so that talos can find it
         src = os.path.join(self.repo_path, 'third_party', 'webkit',
-                                 'PerformanceTests', 'Speedometer')
+                                 'PerformanceTests')
         dest = os.path.join(self.talos_path, 'talos', 'tests', 'webkit',
-                                      'PerformanceTests', 'Speedometer')
-        if not os.path.exists(dest):
-            self.info("Copying speedometer source from %s to %s" % (src, dest))
-            try:
-                shutil.copytree(src, dest)
-            except:
-                self.critical("Error copying speedometer source from %s to %s" % (src, dest))
-        else:
-            self.info("Speedometer source already found at %s" % dest)
+                                      'PerformanceTests')
+
+        if os.path.exists(dest):
+            shutil.rmtree(dest)
+
+        self.info("Copying webkit benchmarks from %s to %s" % (src, dest))
+        try:
+            shutil.copytree(src, dest)
+        except:
+            self.critical("Error copying webkit benchmarks from %s to %s" % (src, dest))
 
     def setup_mitmproxy(self):
         """Some talos tests require the use of mitmproxy to playback the pages,
         set it up here.
         """
         if not self.query_mitmproxy_recording_set():
             self.info("Skipping: mitmproxy is not required")
             return