area/rpkgood first issue
Description
Similar to Scylla's RAID setup script: https://github.com/scylladb/scylladb/blob/master/dist/common/scripts/scylla_raid_setup
Requirements
- It should assemble a RAID0 disk from one or many disk devices.
- It should format the RAID0 disk
- It should mount the RAID0 disk in a user-specified path
- It should make it possible to pass mount options
- It should reassemble and remount correctly the RAID0 disk, if the VM is migrated to a different physical host (Happens a lot in GCP). It should not allow the RAID0 disk to re-assemble as foreign.
- It should reassemble and remount correctly the RAID0 disk if the VM is rebooted.
- It should receive one or multiple disk device paths as input, not try to discover them.
- If the RAID0 disk already exists, it is assembled and XFS formatted, it should do nothing.
- It should fail if any dependent commands are not found. Ex: mdadm, xfsprogs, nvmectl, etc.
- It should offer a debug mode and print abundant information.
- It should account for
udevdand wait for device nodes to settle before attempting any setup.
JIRA Link: CORE-1768