virt.virt_test_utils: run_autotest - 'tar' needs relative paths to strip the leading '/'
[autotest-zwu.git] / client / bin / profilers.py
blobdf152d9b12fc2b3376cd27ca8ea68554fb965d41
1 import os, sys
2 import common
4 from autotest_lib.client.common_lib import utils, error, profiler_manager
7 class profilers(profiler_manager.profiler_manager):
8 def load_profiler(self, profiler, args, dargs):
9 prof_dir = os.path.join(self.job.autodir, "profilers", profiler)
11 try:
12 self.job.install_pkg(profiler, "profiler", prof_dir)
13 except error.PackageInstallError:
14 pass
16 if not os.path.exists(prof_dir):
17 raise profiler_manager.ProfilerNotPresentError(profiler)
19 profiler_module = common.setup_modules.import_module(
20 profiler, "autotest_lib.client.profilers.%s" % profiler)
22 newprofiler = getattr(profiler_module, profiler)(self.job)
24 newprofiler.name = profiler
25 newprofiler.bindir = os.path.join(prof_dir)
26 newprofiler.srcdir = os.path.join(newprofiler.bindir, 'src')
27 newprofiler.tmpdir = os.path.join(self.tmpdir, profiler)
28 newprofiler.initialize(*args, **dargs)
29 utils.update_version(newprofiler.srcdir, newprofiler.preserve_srcdir,
30 newprofiler.version, newprofiler.setup,
31 *args, **dargs)
33 return newprofiler