Skip to content

Commit 9eebfd7

Browse files
authored
feat(iot): add support for configurable timeout in hub (#1177)
1 parent 29e10f9 commit 9eebfd7

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

scaleway/helpers_iot.go

+3-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package scaleway
22

33
import (
44
"fmt"
5+
"time"
56

67
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
78
iot "github.com/scaleway/scaleway-sdk-go/api/iot/v1"
@@ -25,11 +26,12 @@ func iotAPIWithRegionAndID(m interface{}, id string) (*iot.API, scw.Region, stri
2526
return iotAPI, region, ID, err
2627
}
2728

28-
func waitIotHub(iotAPI *iot.API, region scw.Region, hubID string, desiredStates ...iot.HubStatus) error {
29+
func waitIotHub(iotAPI *iot.API, region scw.Region, hubID string, timeout time.Duration, desiredStates ...iot.HubStatus) error {
2930
hub, err := iotAPI.WaitForHub(&iot.WaitForHubRequest{
3031
HubID: hubID,
3132
Region: region,
3233
RetryInterval: DefaultWaitRetryInterval,
34+
Timeout: scw.TimeDurationPtr(timeout),
3335
})
3436
if err != nil {
3537
return err

scaleway/resource_iot_hub.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ func resourceScalewayIotHubCreate(ctx context.Context, d *schema.ResourceData, m
142142
return diag.FromErr(err)
143143
}
144144

145-
err = waitIotHub(iotAPI, region, res.ID, iot.HubStatusReady)
145+
err = waitIotHub(iotAPI, region, res.ID, d.Timeout(schema.TimeoutCreate), iot.HubStatusReady)
146146
if err != nil {
147147
return diag.FromErr(err)
148148
}
@@ -183,7 +183,7 @@ func resourceScalewayIotHubCreate(ctx context.Context, d *schema.ResourceData, m
183183
return diag.FromErr(err)
184184
}
185185

186-
err = waitIotHub(iotAPI, region, res.ID, iot.HubStatusDisabled)
186+
err = waitIotHub(iotAPI, region, res.ID, d.Timeout(schema.TimeoutCreate), iot.HubStatusDisabled)
187187
if err != nil {
188188
return diag.FromErr(err)
189189
}
@@ -262,7 +262,7 @@ func resourceScalewayIotHubUpdate(ctx context.Context, d *schema.ResourceData, m
262262
return diag.FromErr(err)
263263
}
264264

265-
err = waitIotHub(iotAPI, region, hubID, iot.HubStatusReady, iot.HubStatusDisabled)
265+
err = waitIotHub(iotAPI, region, hubID, d.Timeout(schema.TimeoutUpdate), iot.HubStatusReady, iot.HubStatusDisabled)
266266
if err != nil {
267267
return diag.FromErr(err)
268268
}

0 commit comments

Comments
 (0)