mirror of
https://github.com/bpg/terraform-provider-proxmox.git
synced 2025-07-01 11:02:59 +00:00
Minor fixes to VM cloning
This commit is contained in:
parent
94679a3f5e
commit
cd64b66ad7
@ -1038,9 +1038,10 @@ func resourceVirtualEnvironmentVMCreateClone(d *schema.ResourceData, m interface
|
||||
|
||||
updateBody := &proxmox.VirtualEnvironmentVMUpdateRequestBody{
|
||||
AudioDevices: audioDevices,
|
||||
Description: &description,
|
||||
}
|
||||
|
||||
delete := []string{}
|
||||
|
||||
if acpi != dvResourceVirtualEnvironmentVMACPI {
|
||||
updateBody.ACPI = &acpi
|
||||
}
|
||||
@ -1172,6 +1173,16 @@ func resourceVirtualEnvironmentVMCreateClone(d *schema.ResourceData, m interface
|
||||
return err
|
||||
}
|
||||
|
||||
for i := 0; i < len(updateBody.NetworkDevices); i++ {
|
||||
if !updateBody.NetworkDevices[i].Enabled {
|
||||
delete = append(delete, fmt.Sprintf("net%d", i))
|
||||
}
|
||||
}
|
||||
|
||||
for i := len(updateBody.NetworkDevices); i < maxNetworkDevices; i++ {
|
||||
delete = append(delete, fmt.Sprintf("net%d", i))
|
||||
}
|
||||
|
||||
updateBody.NetworkDevices = networkDeviceObjects
|
||||
}
|
||||
|
||||
@ -1189,6 +1200,10 @@ func resourceVirtualEnvironmentVMCreateClone(d *schema.ResourceData, m interface
|
||||
return err
|
||||
}
|
||||
|
||||
for i := len(updateBody.SerialDevices); i < maxSerialDevices; i++ {
|
||||
delete = append(delete, fmt.Sprintf("serial%d", i))
|
||||
}
|
||||
|
||||
updateBody.SerialDevices = serialDevices
|
||||
}
|
||||
|
||||
@ -1214,6 +1229,8 @@ func resourceVirtualEnvironmentVMCreateClone(d *schema.ResourceData, m interface
|
||||
updateBody.VGADevice = vgaDevice
|
||||
}
|
||||
|
||||
updateBody.Delete = delete
|
||||
|
||||
err = veClient.UpdateVM(nodeName, vmID, updateBody)
|
||||
|
||||
if err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user