Make mdadm a soft requirement

No point in requiring it for deployments that don't use software RAID.

Change-Id: I8b40f02cc81d3154f98fa3f2cbb4d3c7319291b8
This commit is contained in:
Dmitry Tantsur 2020-11-20 17:07:00 +01:00
parent 37dc11fcc1
commit ab8dee0386
2 changed files with 12 additions and 0 deletions

View File

@ -305,6 +305,10 @@ def is_md_device(raid_device):
utils.execute('mdadm', '--detail', raid_device)
LOG.debug("%s is an md device", raid_device)
return True
except FileNotFoundError:
LOG.debug('mdadm has not been found, assuming %s is not an md device',
raid_device)
return False
except processutils.ProcessExecutionError:
LOG.debug("%s is not an md device", raid_device)
return False
@ -356,6 +360,9 @@ def _md_scan_and_assemble():
"""
try:
utils.execute('mdadm', '--assemble', '--scan', '--verbose')
except FileNotFoundError:
LOG.warning('mdadm has not been found, RAID devices will not be '
'supported')
except processutils.ProcessExecutionError:
LOG.info('No new RAID devices assembled during start-up')

View File

@ -0,0 +1,5 @@
---
fixes:
- |
The ``mdadm`` utility is no longer a hard requirement. It's still required
if software RAID is used (even when not managed by ironic).