mirror of
https://github.com/bpg/terraform-provider-proxmox.git
synced 2025-07-02 19:43:00 +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.
|
||||
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)
|
||||
timeMax := float64(timeout)
|
||||
timeStart := time.Now()
|
||||
@ -202,10 +202,10 @@ func (c *VirtualEnvironmentClient) WaitForVMConfigUnlock(nodeName string, vmID i
|
||||
data, err := c.GetVMStatus(nodeName, vmID)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if data.Lock == nil || *data.Lock == "" {
|
||||
if !ignoreErrorResponse {
|
||||
return err
|
||||
}
|
||||
} else if data.Lock == nil || *data.Lock == "" {
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@ -1007,7 +1007,8 @@ func resourceVirtualEnvironmentVMCreateClone(d *schema.ResourceData, m interface
|
||||
|
||||
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 {
|
||||
return err
|
||||
|
Loading…
Reference in New Issue
Block a user