From c10bd14cde54e306716daed6074a4a1f0276146c Mon Sep 17 00:00:00 2001 From: James Prestwood Date: Thu, 18 Feb 2021 12:19:31 -0800 Subject: [PATCH] test-runner: use unique name for namespace output files Output files in namespaces were not handled differently and would end up overwriting/duplicating files from the root namespace. These are now named /tmp/--out. --- tools/test-runner | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tools/test-runner b/tools/test-runner index 0649109b..f898ae1e 100755 --- a/tools/test-runner +++ b/tools/test-runner @@ -172,6 +172,11 @@ class Process: self.write_fds = [] self.io_watch = None + if not namespace: + self.output_name = '/tmp/%s-out' % self.name + else: + self.output_name = '/tmp/%s-%s-out' % (self.name, namespace) + if namespace: self.args = ['ip', 'netns', 'exec', namespace] self.args.extend(args) @@ -181,7 +186,7 @@ class Process: # (/tmp/-out). If any verbose options are required this file # will get an IO watch and write out any bytes to the needed FDs. # - self.stdout = open('/tmp/%s-out' % self.name, 'a+') + self.stdout = open(self.output_name, 'a+') self.io_position = self.stdout.tell() if ctx: @@ -285,6 +290,8 @@ class Process: for f in self.write_fds: f.close() + os.remove(self.output_name) + def kill(self, force=False): print("Killing process %s" % self.args)