vmware / terraform-provider-vra

Terraform Provider for VMware Aria Automation
https://registry.terraform.io/providers/vmware/vra/
Mozilla Public License 2.0
104 stars 93 forks source link

diskAttachmentProperties for disk attachment to a VM not exposed #538

Open PaulAngus opened 1 month ago

PaulAngus commented 1 month ago

Code of Conduct

This project has a Code of Conduct that all participants are expected to understand and follow:

Description

The API for attaching a disk to a VM includes diskAttachmentProperties in the schema. This allows the scsiController and unitNumber for the disk to be set. These parameters cannot be set via the VRA Provder.

Without these options, block devices are attached to a VM in a random order. Operations such as resizing and removal via Terraform and ordered mount of the disks inside the VM aren't possible as it is not possible to determine which disk is which.

Describe alternatives you've considered

NA

References

https://api.mgmt.cloud.vmware.com/iaas-api/swagger/webjars/swagger-ui/index.html#/Compute/attachMachineDisk

Community Note

fieldsta commented 1 month ago

Relevant, and likely not all, areas of interest to this request:

https://github.com/vmware/terraform-provider-vra/blob/main/vra/resource_machine.go#L74-L121 Exposing the parameter schema for disks and disks_list.

"disk_attachment_properties": {
    Type:        schema.TypeMap,
    Required:    false,
    Description: "Disk Attachment specific properties.",
},

https://github.com/vmware/terraform-provider-vra/blob/main/vra/resource_machine.go#L481-L486 Including the DiskAttachmentProperties to the diskAttachmentSpecification.

DiskAttachmentProperties: diskToAttach["disk_attachment_properties"].(map[string]string),