test-runner: skip mounting duplicate folders

If the user specifies the same parent directory for several outfiles
skip mounting since it already exists. For example:

--monitor /outfiles/monitor.txt --result /outfiles/result.txt
This commit is contained in:
James Prestwood 2022-05-25 12:37:27 -07:00 committed by Denis Kenzior
parent 1e6773d2a7
commit 87bb9a42b5
1 changed files with 8 additions and 0 deletions

View File

@ -289,7 +289,13 @@ class RunnerAbstract:
# For QEMU/UML runners
def _prepare_mounts(self, extra=[]):
mounted = []
for entry in mounts_common + extra:
if entry.target in mounted:
print("%s already mounted, skipping" % entry.target)
continue
try:
os.lstat(entry.target)
except:
@ -298,6 +304,8 @@ class RunnerAbstract:
mount(entry.source, entry.target, entry.fstype, entry.flags,
entry.options)
mounted.append(entry.target)
for entry in dev_table:
os.symlink(entry.target, entry.linkpath)