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