mirror of
https://github.com/bpg/terraform-provider-proxmox.git
synced 2025-07-03 20:12:59 +00:00
Wait for VM creation while waiting for VM configuration lock to be released
This commit is contained in:
parent
c4c31cdf96
commit
bec026361d
@ -191,7 +191,7 @@ func (c *VirtualEnvironmentClient) WaitForNoNetworkInterfacesFromVMAgent(nodeNam
|
|||||||
}
|
}
|
||||||
|
|
||||||
// WaitForVMConfigUnlock waits for a virtual machine configuration to become unlocked.
|
// WaitForVMConfigUnlock waits for a virtual machine configuration to become unlocked.
|
||||||
func (c *VirtualEnvironmentClient) WaitForVMConfigUnlock(nodeName string, vmID int, timeout int, delay int) error {
|
func (c *VirtualEnvironmentClient) WaitForVMConfigUnlock(nodeName string, vmID int, timeout int, delay int, ignoreErrorResponse bool) error {
|
||||||
timeDelay := int64(delay)
|
timeDelay := int64(delay)
|
||||||
timeMax := float64(timeout)
|
timeMax := float64(timeout)
|
||||||
timeStart := time.Now()
|
timeStart := time.Now()
|
||||||
@ -202,10 +202,10 @@ func (c *VirtualEnvironmentClient) WaitForVMConfigUnlock(nodeName string, vmID i
|
|||||||
data, err := c.GetVMStatus(nodeName, vmID)
|
data, err := c.GetVMStatus(nodeName, vmID)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
if !ignoreErrorResponse {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
} else if data.Lock == nil || *data.Lock == "" {
|
||||||
if data.Lock == nil || *data.Lock == "" {
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1007,7 +1007,8 @@ func resourceVirtualEnvironmentVMCreateClone(d *schema.ResourceData, m interface
|
|||||||
|
|
||||||
d.SetId(strconv.Itoa(vmID))
|
d.SetId(strconv.Itoa(vmID))
|
||||||
|
|
||||||
err = veClient.WaitForVMConfigUnlock(nodeName, vmID, 300, 5)
|
// Wait for the virtual machine to be created and its configuration lock to be released.
|
||||||
|
err = veClient.WaitForVMConfigUnlock(nodeName, vmID, 600, 5, true)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
Loading…
Reference in New Issue
Block a user