-
Notifications
You must be signed in to change notification settings - Fork 455
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
feat: add support for NVMe controllers #2321
Conversation
c442e54
to
d6c41c0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks really good! Closes the top enhancement request.
53cbb90
to
9002624
Compare
9ce149d
9002624
to
9ce149d
Compare
Signed-off-by: Stoyan Zhelyazkov <stoyan.zhelyazkov@broadcom.com>
9ce149d
to
9801c94
Compare
Reverting #2315 in an ammend since there was a breaking change we can address later. |
This functionality has been released in v2.11.0 of the Terraform Provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading. For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template. Thank you! |
Description
Overview
vSphere supports 4 types of device controllers on VMs - SCSI, IDE, SATA and NVMe.
NVMe was added with vSphere 6.5 but is still not supported by the terraform provider.
This PR contains code changes that allow the addition of NVMe controllers to new and existing VMs as well as disk assignment to such controllers.
NVMe controller details
The maximum number of NVMe controllers on a VM is 4 and the maximum number of devices on one controller is 64.
As with the other 3 controller types increases in the number of controllers are supported but decreases have no effect and do not delete devices on the machine.
Interface changes
r/virtual_machine
- added a new input propertynvme_controller_count
. The value of this property indicates the number of controllers that will be created on the machine.d/virtual_machine
- added a new input propertynvme_controller_scan_count
. It functions identically to the scan properties for the other controller types. Used to scan for assigned disks.subresource/virtual_disk
-controller_type
now supports a new valuenvme
Known issues
The default value for
controller_type
isscsi
and it overrides the actual value when importing a virtual machine.To properly remediate this problem the default needs to be removed and
controller_type
needs to be a required property for virtual disks. This would constitute a breaking change and would push the potential deployment of NVMe support to the next major release.Additional minor change
Removed the references to an non-existing property
vtpm_present
that cause nil pointer references during various VM operations.Acceptance tests
Ran
TestAccResourceVSphereVirtualMachine_basic
as a sanity check.Added a new test case
TestAccResourceVSphereVirtualMachine_nvmeController
that creates 2 NVMe controllers on a VM and attaches a disk to one of themManually tested the data source and the import scenario (see the "Known issues" section)
Release Note
Release note for CHANGELOG:
References
Closes #1276