hashicorp / packer

Packer is a tool for creating identical machine images for multiple platforms from a single source configuration.
http://www.packer.io
Other
15.03k stars 3.32k forks source link

Virtualbox-iso - Add NVMe support option to hard_drive_interface? #8301

Closed breisig closed 4 years ago

breisig commented 4 years ago

It seems Virtualbox 6.0.xx series now support the NVMe controller. But when attempting to set hard_drive_interface to "NVMe", it says only IDE, Sata, or SCSI is supported. Can we add the option to allow the NVMe controller?

==> virtualbox-iso: Error creating disk controller: VBoxManage error: Oracle VM VirtualBox Command Line Management Interface Version 6.0.2 ==> virtualbox-iso: (C) 2005-2019 Oracle Corporation ==> virtualbox-iso: All rights reserved. ==> virtualbox-iso: ==> virtualbox-iso: Usage: ==> virtualbox-iso: ==> virtualbox-iso: VBoxManage storagectl <uuid|vmname> ==> virtualbox-iso: --name ==> virtualbox-iso: [--add ide|sata|scsi|floppy|sas|usb|pcie] ==> virtualbox-iso: [--controller LSILogic|LSILogicSAS|BusLogic| ==> virtualbox-iso: IntelAHCI|PIIX3|PIIX4|ICH6|I82078| ==> virtualbox-iso: [ USB|NVMe]

SwampDragons commented 4 years ago

Hi, thanks for reaching out! I've opened #8305 to hopefully address this, and builds of that PR can be found here: https://circleci.com/gh/hashicorp/packer/19343#artifacts/containers/0

I haven't had a chance to test it out yet since I'd have to update virtualbox etc, but would really appreciate if you could take it for a whirl and see if it works for you.

breisig commented 4 years ago

Thanks, I see some final changes were done today. I guess I'll have to wait for the next build to be built to test it out.

azr commented 4 years ago

Hey @breisig, Yes, I added a little change; you can find the new artifacts here: https://app.circleci.com/jobs/github/hashicorp/packer/19382/artifacts

breisig commented 4 years ago

@azr Hmm, it's returning a 404 error on that page.

azr commented 4 years ago

Weird; works for me - it's probably because I have activated circle-ci's new beta ui. Does https://circleci.com/gh/hashicorp/packer/19382/#artifacts/containers/0 work ?

breisig commented 4 years ago

@azr Yes, that link works for me. Let me test it out.

breisig commented 4 years ago

@azr Just tested it out and it works!!! It see the NVMe HD attached in virtualbox and I can install an OS (testing CentOS 8 iso) and it installs on the /dev/nvme* device. So that works out good but after the installation is done and it reboots, Virtualbox is complaining that "No hard disks found". Hmmm

breisig commented 4 years ago

That might be a separate issue with Virtualbox possibly requiring the VM to bet setup in EFI mode instead of BIOS mode.

SwampDragons commented 4 years ago

I definitely read somewhere when researching this that it has to be in EFI mode for nvme to work. Maybe we should document this.

breisig commented 4 years ago

Yeah, I had modify my vboxmanage to set the VM into EFI mode using the following

      "vboxmanage": [
        [ "modifyvm", "{{.Name}}", "--firmware", "EFI" ],
      ]

I am currently working out booting an ISO in EFI mode as related to bug https://github.com/hashicorp/packer/issues/7081

azr commented 4 years ago

Nice, I'll document this in the nvme PR docs thanks @breisig

ghost commented 4 years ago

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.