feat: retry forgetting device when device is busy (#26)

This commit is contained in:
Mateusz Filipowicz
2025-02-26 09:31:32 +01:00
committed by GitHub
parent 4250c1583b
commit af1aa62b3f
2 changed files with 24 additions and 7 deletions

View File

@@ -260,8 +260,16 @@ func resourceDeviceDelete(ctx context.Context, d *schema.ResourceData, meta inte
if site == "" {
site = c.Site
}
err := c.ForgetDevice(ctx, site, mac)
err := retry.RetryContext(ctx, 1*time.Minute, func() *retry.RetryError {
internalErr := c.ForgetDevice(ctx, site, mac)
if internalErr == nil {
return nil
}
if base.IsServerErrorContains(internalErr, "api.err.DeviceBusy") {
return retry.RetryableError(internalErr)
}
return retry.NonRetryableError(internalErr)
})
if err != nil {
return diag.FromErr(err)
}