diff options
| -rw-r--r-- | meta/lib/oeqa/buildperf/base.py | 36 |
1 files changed, 13 insertions, 23 deletions
diff --git a/meta/lib/oeqa/buildperf/base.py b/meta/lib/oeqa/buildperf/base.py index 83439f1bdb..dbc534efe3 100644 --- a/meta/lib/oeqa/buildperf/base.py +++ b/meta/lib/oeqa/buildperf/base.py | |||
| @@ -75,9 +75,7 @@ def time_cmd(cmd, **kwargs): | |||
| 75 | if isinstance(cmd, str): | 75 | if isinstance(cmd, str): |
| 76 | timecmd = ' '.join(timecmd) + ' ' | 76 | timecmd = ' '.join(timecmd) + ' ' |
| 77 | timecmd += cmd | 77 | timecmd += cmd |
| 78 | # TODO: 'ignore_status' could/should be removed when globalres.log is | 78 | ret = runCmd2(timecmd, **kwargs) |
| 79 | # deprecated. The function would just raise an exception, instead | ||
| 80 | ret = runCmd2(timecmd, ignore_status=True, **kwargs) | ||
| 81 | timedata = tmpf.file.read() | 79 | timedata = tmpf.file.read() |
| 82 | return ret, timedata | 80 | return ret, timedata |
| 83 | 81 | ||
| @@ -315,16 +313,15 @@ class BuildPerfTestCase(unittest.TestCase): | |||
| 315 | cmd_str = cmd if isinstance(cmd, str) else ' '.join(cmd) | 313 | cmd_str = cmd if isinstance(cmd, str) else ' '.join(cmd) |
| 316 | log.info("Timing command: %s", cmd_str) | 314 | log.info("Timing command: %s", cmd_str) |
| 317 | cmd_log = os.path.join(self.out_dir, 'commands.log') | 315 | cmd_log = os.path.join(self.out_dir, 'commands.log') |
| 318 | with open(cmd_log, 'a') as fobj: | 316 | try: |
| 319 | ret, timedata = time_cmd(cmd, stdout=fobj) | 317 | with open(cmd_log, 'a') as fobj: |
| 320 | if ret.status: | 318 | ret, timedata = time_cmd(cmd, stdout=fobj) |
| 321 | log.error("Time will be reported as 0. Command failed: %s", | 319 | except CommandError: |
| 322 | ret.status) | 320 | log.error("Command '%s' failed, see %s for more details", cmd_str, |
| 323 | etime = timedelta(0) | 321 | cmd_log) |
| 324 | self._failed = True | 322 | raise |
| 325 | else: | 323 | match = re.search(r'.*wall clock.*: (?P<etime>.*)\n', timedata) |
| 326 | match = re.search(r'.*wall clock.*: (?P<etime>.*)\n', timedata) | 324 | etime = str_time_to_timedelta(match.group('etime')) |
| 327 | etime = str_time_to_timedelta(match.group('etime')) | ||
| 328 | 325 | ||
| 329 | measurement = {'type': self.SYSRES, | 326 | measurement = {'type': self.SYSRES, |
| 330 | 'name': name, | 327 | 'name': name, |
| @@ -344,16 +341,9 @@ class BuildPerfTestCase(unittest.TestCase): | |||
| 344 | 341 | ||
| 345 | def measure_disk_usage(self, path, name, legend): | 342 | def measure_disk_usage(self, path, name, legend): |
| 346 | """Estimate disk usage of a file or directory""" | 343 | """Estimate disk usage of a file or directory""" |
| 347 | # TODO: 'ignore_status' could/should be removed when globalres.log is | 344 | ret = runCmd2(['du', '-s', path]) |
| 348 | # deprecated. The function would just raise an exception, instead | 345 | size = int(ret.output.split()[0]) |
| 349 | ret = runCmd2(['du', '-s', path], ignore_status=True) | 346 | log.debug("Size of %s path is %s", path, size) |
| 350 | if ret.status: | ||
| 351 | log.error("du failed, disk usage will be reported as 0") | ||
| 352 | size = 0 | ||
| 353 | self._failed = True | ||
| 354 | else: | ||
| 355 | size = int(ret.output.split()[0]) | ||
| 356 | log.debug("Size of %s path is %s", path, size) | ||
| 357 | measurement = {'type': self.DISKUSAGE, | 347 | measurement = {'type': self.DISKUSAGE, |
| 358 | 'name': name, | 348 | 'name': name, |
| 359 | 'legend': legend} | 349 | 'legend': legend} |
