diff --git a/ironic/drivers/modules/deploy_utils.py b/ironic/drivers/modules/deploy_utils.py index ce7da1971a..4cf11d1a6a 100644 --- a/ironic/drivers/modules/deploy_utils.py +++ b/ironic/drivers/modules/deploy_utils.py @@ -401,12 +401,13 @@ def deploy_disk_image(address, port, iqn, lun, with _iscsi_setup_and_handle_errors(address, port, iqn, lun) as dev: disk_utils.populate_image(image_path, dev) - disk_identifier = disk_utils.get_disk_identifier(dev) if configdrive: disk_utils.create_config_drive_partition(node_uuid, dev, configdrive) + disk_identifier = disk_utils.get_disk_identifier(dev) + return {'disk identifier': disk_identifier} diff --git a/releasenotes/notes/fix-disk-identifier-overwrite-42b33a5a0f7742d8.yaml b/releasenotes/notes/fix-disk-identifier-overwrite-42b33a5a0f7742d8.yaml new file mode 100644 index 0000000000..6404bc15ea --- /dev/null +++ b/releasenotes/notes/fix-disk-identifier-overwrite-42b33a5a0f7742d8.yaml @@ -0,0 +1,5 @@ +--- +fixes: + - Fix handling of whole disk images with 0x00000000 disk identifier. + Instances failed to boot as the identifier in boot config was overwritten + during config drive creation. See https://bugs.launchpad.net/ironic/+bug/1685093