Allow device timeouts to be customized
This commit is contained in:
@@ -173,7 +173,7 @@ func resourceDeviceCreate(ctx context.Context, d *schema.ResourceData, meta inte
|
||||
return diag.FromErr(err)
|
||||
}
|
||||
|
||||
device, err = waitForDeviceState(ctx, d, meta, unifi.DeviceStateConnected, []unifi.DeviceState{unifi.DeviceStateAdopting, unifi.DeviceStatePending, unifi.DeviceStateProvisioning, unifi.DeviceStateUpgrading})
|
||||
device, err = waitForDeviceState(ctx, d, meta, unifi.DeviceStateConnected, []unifi.DeviceState{unifi.DeviceStateAdopting, unifi.DeviceStatePending, unifi.DeviceStateProvisioning, unifi.DeviceStateUpgrading}, 5*time.Minute)
|
||||
if err != nil {
|
||||
return diag.FromErr(err)
|
||||
}
|
||||
@@ -204,7 +204,7 @@ func resourceDeviceUpdate(ctx context.Context, d *schema.ResourceData, meta inte
|
||||
return diag.FromErr(err)
|
||||
}
|
||||
|
||||
_, err = waitForDeviceState(ctx, d, meta, unifi.DeviceStateConnected, []unifi.DeviceState{unifi.DeviceStateAdopting, unifi.DeviceStateProvisioning})
|
||||
_, err = waitForDeviceState(ctx, d, meta, unifi.DeviceStateConnected, []unifi.DeviceState{unifi.DeviceStateAdopting, unifi.DeviceStateProvisioning}, 1*time.Minute)
|
||||
if err != nil {
|
||||
return diag.FromErr(err)
|
||||
}
|
||||
@@ -231,7 +231,7 @@ func resourceDeviceDelete(ctx context.Context, d *schema.ResourceData, meta inte
|
||||
return diag.FromErr(err)
|
||||
}
|
||||
|
||||
_, err = waitForDeviceState(ctx, d, meta, unifi.DeviceStatePending, []unifi.DeviceState{unifi.DeviceStateConnected, unifi.DeviceStateDeleting})
|
||||
_, err = waitForDeviceState(ctx, d, meta, unifi.DeviceStatePending, []unifi.DeviceState{unifi.DeviceStateConnected, unifi.DeviceStateDeleting}, 1*time.Minute)
|
||||
if _, ok := err.(*unifi.NotFoundError); !ok {
|
||||
return diag.FromErr(err)
|
||||
}
|
||||
@@ -345,7 +345,7 @@ func fromPortOverride(po unifi.DevicePortOverrides) (map[string]interface{}, err
|
||||
}, nil
|
||||
}
|
||||
|
||||
func waitForDeviceState(ctx context.Context, d *schema.ResourceData, meta interface{}, targetState unifi.DeviceState, pendingStates []unifi.DeviceState) (*unifi.Device, error) {
|
||||
func waitForDeviceState(ctx context.Context, d *schema.ResourceData, meta interface{}, targetState unifi.DeviceState, pendingStates []unifi.DeviceState, timeout time.Duration) (*unifi.Device, error) {
|
||||
c := meta.(*client)
|
||||
|
||||
site := d.Get("site").(string)
|
||||
@@ -393,7 +393,7 @@ func waitForDeviceState(ctx context.Context, d *schema.ResourceData, meta interf
|
||||
|
||||
return device, state, err
|
||||
},
|
||||
Timeout: 5 * time.Minute,
|
||||
Timeout: timeout,
|
||||
NotFoundChecks: 30,
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user