mirror of
https://git.yoctoproject.org/poky
synced 2026-02-20 08:29:42 +01:00
oeqa.buildperf: include commands log file name in results.json
(From OE-Core rev: b22a71cf3a53a33763ff02608119d2c73cbde006) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
c39db4bc45
commit
7d77c02401
@@ -220,6 +220,8 @@ class BuildPerfTestResult(unittest.TextTestResult):
|
|||||||
'status': status,
|
'status': status,
|
||||||
'start_time': test.start_time,
|
'start_time': test.start_time,
|
||||||
'elapsed_time': test.elapsed_time,
|
'elapsed_time': test.elapsed_time,
|
||||||
|
'cmd_log_file': os.path.relpath(test.cmd_log_file,
|
||||||
|
self.out_dir),
|
||||||
'measurements': test.measurements}
|
'measurements': test.measurements}
|
||||||
results['tests'] = tests
|
results['tests'] = tests
|
||||||
|
|
||||||
@@ -312,6 +314,10 @@ class BuildPerfTestCase(unittest.TestCase):
|
|||||||
def out_dir(self):
|
def out_dir(self):
|
||||||
return os.path.join(self.base_dir, self.name)
|
return os.path.join(self.base_dir, self.name)
|
||||||
|
|
||||||
|
@property
|
||||||
|
def cmd_log_file(self):
|
||||||
|
return os.path.join(self.out_dir, 'commands.log')
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
"""Set-up fixture for each test"""
|
"""Set-up fixture for each test"""
|
||||||
if self.build_target:
|
if self.build_target:
|
||||||
@@ -328,9 +334,8 @@ class BuildPerfTestCase(unittest.TestCase):
|
|||||||
"""Run a command and log it's output"""
|
"""Run a command and log it's output"""
|
||||||
cmd_str = cmd if isinstance(cmd, str) else ' '.join(cmd)
|
cmd_str = cmd if isinstance(cmd, str) else ' '.join(cmd)
|
||||||
log.info("Logging command: %s", cmd_str)
|
log.info("Logging command: %s", cmd_str)
|
||||||
cmd_log = os.path.join(self.out_dir, 'commands.log')
|
|
||||||
try:
|
try:
|
||||||
with open(cmd_log, 'a') as fobj:
|
with open(self.cmd_log_file, 'a') as fobj:
|
||||||
runCmd2(cmd, stdout=fobj)
|
runCmd2(cmd, stdout=fobj)
|
||||||
except CommandError as err:
|
except CommandError as err:
|
||||||
log.error("Command failed: %s", err.retcode)
|
log.error("Command failed: %s", err.retcode)
|
||||||
@@ -368,9 +373,8 @@ class BuildPerfTestCase(unittest.TestCase):
|
|||||||
cmd_str = cmd if isinstance(cmd, str) else ' '.join(cmd)
|
cmd_str = cmd if isinstance(cmd, str) else ' '.join(cmd)
|
||||||
log.info("Timing command: %s", cmd_str)
|
log.info("Timing command: %s", cmd_str)
|
||||||
data_q = SimpleQueue()
|
data_q = SimpleQueue()
|
||||||
cmd_log = os.path.join(self.out_dir, 'commands.log')
|
|
||||||
try:
|
try:
|
||||||
with open(cmd_log, 'a') as fobj:
|
with open(self.cmd_log_file, 'a') as fobj:
|
||||||
proc = Process(target=_worker, args=(data_q, cmd,),
|
proc = Process(target=_worker, args=(data_q, cmd,),
|
||||||
kwargs={'stdout': fobj})
|
kwargs={'stdout': fobj})
|
||||||
proc.start()
|
proc.start()
|
||||||
@@ -380,7 +384,7 @@ class BuildPerfTestCase(unittest.TestCase):
|
|||||||
raise data
|
raise data
|
||||||
except CommandError:
|
except CommandError:
|
||||||
log.error("Command '%s' failed, see %s for more details", cmd_str,
|
log.error("Command '%s' failed, see %s for more details", cmd_str,
|
||||||
cmd_log)
|
self.cmd_log_file)
|
||||||
raise
|
raise
|
||||||
etime = data['elapsed_time']
|
etime = data['elapsed_time']
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user