Package: openstack-debian-images Version: 1.73 Tags: patch Due to the different naming convention for NVMe device nodes, build-openstack-debian-image fails to set up a RAID array because it's trying to use /dev/nvme0n11 instead of nvme0n1p1.
I've attached a patch which fixes this. -- Regards Jim
diff --git a/build-openstack-debian-image b/build-openstack-debian-image index 9b2e69a..efb6cef 100755 --- a/build-openstack-debian-image +++ b/build-openstack-debian-image @@ -857,24 +857,21 @@ if [ -n "${RAID_DEVICES}" ] ; then FIRST_RAID_ESP_DEV="" SECOND_RAID_ESP_DEV="" for i in ${DEVICES_TO_PARTITION} ; do + if echo "${i}" | grep -q -E ^/dev/nvme ; then + DEV_NODE_PREFIX="${i}p" + else + DEV_NODE_PREFIX="${i}" + fi if [ -n "${RAID_DLIST}" ] ; then - RAID_DLIST="${RAID_DLIST} ${i}${RAID_PART_NUM}" + RAID_DLIST="${RAID_DLIST} ${DEV_NODE_PREFIX}${RAID_PART_NUM}" else - RAID_DLIST="${i}${RAID_PART_NUM}" + RAID_DLIST="${DEV_NODE_PREFIX}${RAID_PART_NUM}" fi if [ -z "${FIRST_RAID_ESP_DEV}" ] && [ "${BOOTTYPE}" = "uefi" ] ; then # This is the UEFI partition of the first RAID device - if echo "${DEST_HDD}" | grep -q -E ^nvme ; then - FIRST_RAID_ESP_DEV=${i}p1 - else - FIRST_RAID_ESP_DEV=${i}1 - fi + FIRST_RAID_ESP_DEV=${DEV_NODE_PREFIX}1 elif [ -n "${FIRST_RAID_ESP_DEV}" ] && [ -z "${SECOND_RAID_ESP_DEV}" ] && [ "${BOOTTYPE}" = "uefi" ] ; then - if echo "${DEST_HDD}" | grep -q -E ^nvme ; then - SECOND_RAID_ESP_DEV=${i}p1 - else - SECOND_RAID_ESP_DEV=${i}1 - fi + SECOND_RAID_ESP_DEV=${DEV_NODE_PREFIX}1 fi NUM_DEVS=$((${NUM_DEVS} + 1)) done