Skip to content

Additional Disks Do Not Get Configured and Mounted Correctly When Using a Non-SCSI Disk Adapter Type #91

@dkierner-dh

Description

@dkierner-dh

Overview of the Issue

When specifying multiple disks with disk_additional_size = [...] in combination with a non-SCSI adapter type, e. g. disk_adapter_type = "nvme" or disk_adapter_type = "sata", only the first disk is available.
VMs with a bus adapter type that uses SCSI will not experience the problem.
The error appears regardless of using BIOS or UEFI.

Reproduction Steps

Add the following code to a working Packer configuration:

disk_additional_size = [ 
  204800, # Disk 1
  51200, # Disk 2
  204800, # Disk 3
]
disk_adapter_type = "nvme"

Your VM will boot up with only one NVMe disk connected.
To verify, open the settings of the VM and see that only one disk shows up.
Checking the .vmx-file will reveal, that the additional disks have been created with adapter type lsilogic.
The same is true for disk_adapter_type = "sata".

Plugin and Packer version

Tested on:

  • Packer 1.8.3
  • VMware plugin 1.0.7

Simplified Packer Buildfile

source "vmware-iso" "test-multiple-non-scsi-disks" {
  iso_url = https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-11.5.0-amd64-netinst.iso
  iso_checksum = 6a6607a05d57b7c62558e9c462fe5c6c04b9cfad2ce160c3e9140aa4617ab73aff7f5f745dfe51bbbe7b33c9b0e219a022ad682d6c327de0e53e40f079abf66a
  vm_name = "Test Multiple Non-SCSI Disks"
  cpus = 4
  memory = 8192
  cores = 4
  sound = true
  usb = true
  disk_size = "40960"
  disk_additional_size = [
    30720, # Disk 2
    92160, # Disk 3
    122880, # Disk 4
  ]
  disk_adapter_type = "nvme"
  vmx_data = {
    "bios.bootorder" = "", # Avoids error "No compatible bootloader found."
    "firmware" = "efi",
  }
  network_adapter_type = "vmxnet3"
  version = 19 # VMware Workstation Pro 16.2.x and official Debian 11 support
  guest_os_type = "debian11-64"
}

Virtual Hardware version 19 (equivalent to Workstation Pro 16.2.x) is required for official Debian 11 support.

Operating system and Environment details

  • Host OS: Microsoft Windows 10 21H2
  • Hypervisor: VMware Workstation Pro 16.2.3
  • Guest OS: Debian 11 "Bullseye" 64-Bit (amd64)

Log Fragment

2022/09/13 15:14:19 ui: ==> vmware-iso.test-multiple-non-scsi-disks: Creating required virtual machine disks
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 [INFO] Creating disk with Path: output-test-multiple-non-scsi-disks\disk.vmdk and Size: 40960M
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 Executing: C:/Program Files (x86)/VMware/VMware Workstation/vmware-vdiskmanager.exe -c -s 40960M -a nvme -t 1 output-test-multiple-non-scsi-disks\disk.vmdk
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 stdout: Creating disk 'output-test-multiple-non-scsi-disks\disk.vmdk'
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: Virtual disk creation successful.
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 stderr:
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 [INFO] Creating disk with Path: output-test-multiple-non-scsi-disks\disk-1.vmdk and Size: 30720M
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 Executing: C:/Program Files (x86)/VMware/VMware Workstation/vmware-vdiskmanager.exe -c -s 30720M -a nvme -t 1 output-test-multiple-non-scsi-disks\disk-1.vmdk
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 stdout: Creating disk 'output-test-multiple-non-scsi-disks\disk-1.vmdk'
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: Virtual disk creation successful.
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 stderr:
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 [INFO] Creating disk with Path: output-test-multiple-non-scsi-disks\disk-2.vmdk and Size: 92160M
2022/09/13 15:14:19 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:19 Executing: C:/Program Files (x86)/VMware/VMware Workstation/vmware-vdiskmanager.exe -c -s 92160M -a nvme -t 1 output-test-multiple-non-scsi-disks\disk-2.vmdk
2022/09/13 15:14:20 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:20 stdout: Creating disk 'output-test-multiple-non-scsi-disks\disk-2.vmdk'
2022/09/13 15:14:20 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: Virtual disk creation successful.
2022/09/13 15:14:20 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:20 stderr:
2022/09/13 15:14:20 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:20 [INFO] Creating disk with Path: output-test-multiple-non-scsi-disks\disk-3.vmdk and Size: 122880M
2022/09/13 15:14:20 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:20 Executing: C:/Program Files (x86)/VMware/VMware Workstation/vmware-vdiskmanager.exe -c -s 122880M -a nvme -t 1 output-test-multiple-non-scsi-disks\disk-3.vmdk
2022/09/13 15:14:20 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: 2022/09/13 15:14:20 stdout: Creating disk 'output-test-multiple-non-scsi-disks\disk-3.vmdk'
2022/09/13 15:14:20 packer-plugin-vmware_v1.0.7_x5.0_windows_amd64.exe plugin: Virtual disk creation successful.

VMX-File Excerpts

Primary Disk (NVMe)

nvme0.pciSlotNumber = "192"
nvme0.present = "TRUE"
nvme0:0.present = "TRUE"
nvme0:0.redo = ""
nvme0:0.filename = "disk.vmdk"

Additional Disks (SCSI)

scsi0.pcislotnumber = "-1"
scsi0.present = "FALSE"
scsi0.virtualdev = "lsilogic"
scsi0:0.redo = ""
scsi0:1.filename = "disk-1.vmdk"
scsi0:1.present = "FALSE"
scsi0:1.redo = ""
scsi0:2.filename = "disk-2.vmdk"
scsi0:2.present = "FALSE"
scsi0:2.redo = ""
scsi0:3.filename = "disk-3.vmdk"
scsi0:3.present = "FALSE"
scsi0:3.redo = ""

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions