diff options
Diffstat (limited to 'testing/mozharness/mozharness/mozilla/mozbase.py')
-rw-r--r-- | testing/mozharness/mozharness/mozilla/mozbase.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/testing/mozharness/mozharness/mozilla/mozbase.py b/testing/mozharness/mozharness/mozilla/mozbase.py new file mode 100644 index 0000000000..2dd65c87df --- /dev/null +++ b/testing/mozharness/mozharness/mozilla/mozbase.py @@ -0,0 +1,32 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +from __future__ import absolute_import +import os +from mozharness.base.script import PreScriptAction + + +class MozbaseMixin(object): + """Automatically set virtualenv requirements to use mozbase + from test package. + """ + + def __init__(self, *args, **kwargs): + super(MozbaseMixin, self).__init__(*args, **kwargs) + + @PreScriptAction("create-virtualenv") + def _install_mozbase(self, action): + dirs = self.query_abs_dirs() + + requirements = os.path.join( + dirs["abs_test_install_dir"], + "config", + self.config.get("mozbase_requirements", "mozbase_requirements.txt"), + ) + if not os.path.isfile(requirements): + self.fatal( + "Could not find mozbase requirements file: {}".format(requirements) + ) + + self.register_virtualenv_module(requirements=[requirements], two_pass=True) |