Skip to content

Commit 35ea38a

Browse files
authored
Merge pull request #1790 from ceph/no-devtmpfs-scratch-devs
2 parents a773b06 + d118c03 commit 35ea38a

File tree

1 file changed

+18
-20
lines changed

1 file changed

+18
-20
lines changed

teuthology/misc.py

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -808,27 +808,25 @@ def get_scratch_devices(remote):
808808

809809
retval = []
810810
for dev in devs:
811-
try:
812-
# FIXME: Split this into multiple calls.
813-
remote.run(
814-
args=[
815-
# node exists
816-
'stat',
817-
dev,
818-
run.Raw('&&'),
819-
# readable
820-
'sudo', 'dd', 'if=%s' % dev, 'of=/dev/null', 'count=1',
821-
run.Raw('&&'),
822-
# not mounted
823-
run.Raw('!'),
824-
'mount',
825-
run.Raw('|'),
826-
'grep', '-q', dev,
827-
]
828-
)
811+
dev_checks = [
812+
[['stat', dev], "does not exist"],
813+
[['sudo', 'dd', 'if=%s' % dev, 'of=/dev/null', 'count=1'], "is not readable"],
814+
[
815+
[run.Raw('!'), 'mount', run.Raw('|'), 'grep', '-v', 'devtmpfs', run.Raw('|'),
816+
'grep', '-q', dev],
817+
"is in use"
818+
],
819+
]
820+
for args, msg in dev_checks:
821+
try:
822+
remote.run(args=args)
823+
except CommandFailedError:
824+
log.debug(f"get_scratch_devices: {dev} {msg}")
825+
break
826+
else:
829827
retval.append(dev)
830-
except CommandFailedError:
831-
log.debug("get_scratch_devices: %s is in use" % dev)
828+
continue
829+
break
832830
return retval
833831

834832

0 commit comments

Comments
 (0)