mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-21 22:09:23 +01:00
test-runner: fix logging for namespaces and pre-test processes
Namespace process logs were appearing under 'ip' (and also overwriting actual 'ip' logs) since they were executed with 'ip netns exec <namespace>'. Instead special case this and append '-<namespace>' to the log file name. In addition processes executed prior to any tests were being put under a folder (name of testhome directory). Now this case is detected and these logs are put at the top level log directory.
This commit is contained in:
parent
b5df2e27be
commit
54552db7ba
@ -129,6 +129,8 @@ class Process(subprocess.Popen):
|
||||
self.killed = False
|
||||
self.namespace = namespace
|
||||
|
||||
logfile = args[0]
|
||||
|
||||
if not self.ctx:
|
||||
global config
|
||||
self.ctx = config.ctx
|
||||
@ -138,6 +140,7 @@ class Process(subprocess.Popen):
|
||||
|
||||
if namespace:
|
||||
args = ['ip', 'netns', 'exec', namespace] + args
|
||||
logfile += '-%s' % namespace
|
||||
|
||||
if outfile:
|
||||
# outfile is only used by iwmon, in which case we don't want
|
||||
@ -145,9 +148,16 @@ class Process(subprocess.Popen):
|
||||
self._append_outfile(outfile, append=False)
|
||||
|
||||
if self.ctx.args.log:
|
||||
logfile = '%s/%s/%s' % (self.ctx.args.log,
|
||||
os.path.basename(os.getcwd()),
|
||||
args[0])
|
||||
testdir = os.getcwd()
|
||||
|
||||
# Special case any processes started prior to a test
|
||||
# (i.e. from testhome). Put these in the root log directory
|
||||
if testdir == self.ctx.args.testhome:
|
||||
testdir = '.'
|
||||
else:
|
||||
testdir = os.path.basename(testdir)
|
||||
|
||||
logfile = '%s/%s/%s' % (self.ctx.args.log, testdir, logfile)
|
||||
self._append_outfile(logfile)
|
||||
|
||||
super().__init__(args, stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
|
||||
|
Loading…
Reference in New Issue
Block a user