Bug 1007262 - talos should use in-tree mozbase. r=jmaher
authorJulien Pagès <j.parkouss@gmail.com>
Sat, 12 Sep 2015 18:58:11 +0200
changeset 295467 91040fc155c4b7c8226a62e9761efe4360fa3857
parent 295466 710023d8a43c2d1de98bd118b954d16c27aaab84
child 295468 7508686dc981cd072b73ae182f71c233aff94863
push id5245
push userraliiev@mozilla.com
push dateThu, 29 Oct 2015 11:30:51 +0000
treeherdermozilla-beta@dac831dc1bd0 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjmaher
bugs1007262
milestone43.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 1007262 - talos should use in-tree mozbase. r=jmaher
testing/mozharness/mozharness/mozilla/testing/talos.py
--- a/testing/mozharness/mozharness/mozilla/testing/talos.py
+++ b/testing/mozharness/mozharness/mozilla/testing/talos.py
@@ -488,22 +488,40 @@ class Talos(TestingMixin, MercurialScrip
         return super(Talos, self).download_and_extract(
             suite_categories=['common', 'talos']
         )
 
     def create_virtualenv(self, **kwargs):
         """VirtualenvMixin.create_virtualenv() assuemes we're using
         self.config['virtualenv_modules']. Since we are installing
         talos from its source, we have to wrap that method here."""
-        # XXX This method could likely be replaced with a PreScriptAction hook.
+        # install mozbase first, so we use in-tree versions
+        if not self.run_local:
+            mozbase_requirements = os.path.join(
+                self.query_abs_dirs()['abs_work_dir'],
+                'tests',
+                'config',
+                'mozbase_requirements.txt'
+            )
+        else:
+            mozbase_requirements = os.path.join(
+                os.path.dirname(self.talos_path),
+                'config',
+                'mozbase_requirements.txt'
+            )
+        self.register_virtualenv_module(
+            requirements=[mozbase_requirements],
+            two_pass=True,
+            editable=True,
+        )
         # require pip >= 1.5 so pip will prefer .whl files to install
         super(Talos, self).create_virtualenv(
-            modules=['mozinstall', 'pip>=1.5']
+            modules=['pip>=1.5']
         )
-        # talos in harness requires mozinstall and what is
+        # talos in harness requires what else is
         # listed in talos requirements.txt file.
         self.install_module(
             requirements=[os.path.join(self.talos_path,
                                        'requirements.txt')]
         )
 
     def postflight_create_virtualenv(self):
         """ This belongs in download_and_install() but requires the