from oeqa.utils.commands import runCmd, get_bb_vars, get_test_layer
class OESelftestTestContext(OETestContext):
- def __init__(self, td=None, logger=None, machines=None, config_paths=None):
+ def __init__(self, td=None, logger=None, machines=None, config_paths=None, newbuilddir=None):
super(OESelftestTestContext, self).__init__(td, logger)
self.machines = machines
self.custommachine = None
self.config_paths = config_paths
+ self.newbuilddir = newbuilddir
def setup_builddir(self, suffix, selftestdir, suite):
builddir = os.environ['BUILDDIR']
if not selftestdir:
selftestdir = get_test_layer()
- newbuilddir = builddir + suffix
+ if self.newbuilddir:
+ newbuilddir = os.path.join(self.newbuilddir, 'build' + suffix)
+ else:
+ newbuilddir = builddir + suffix
newselftestdir = newbuilddir + "/meta-selftest"
if os.path.exists(newbuilddir):
action='append', default=None,
help='Exclude all (unhidden) tests that match any of the specified tag(s). (exclude applies before select)')
+ parser.add_argument('-B', '--newbuilddir', help='New build directory to use for tests.')
parser.set_defaults(func=self.run)
def _get_available_machines(self):
self.tc_kwargs['init']['config_paths']['builddir'] = builddir
self.tc_kwargs['init']['config_paths']['localconf'] = os.path.join(builddir, "conf/local.conf")
self.tc_kwargs['init']['config_paths']['bblayers'] = os.path.join(builddir, "conf/bblayers.conf")
+ self.tc_kwargs['init']['newbuilddir'] = args.newbuilddir
def tag_filter(tags):
if args.exclude_tags: