Skip to content

Commit c3f414b

Browse files
committed
delete pnic before terminating server
1 parent 7f53a1a commit c3f414b

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

internal/services/instance/server.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1262,6 +1262,24 @@ func ResourceInstanceServerDelete(ctx context.Context, d *schema.ResourceData, m
12621262
}
12631263
}
12641264

1265+
// Delete private-nic if managed by instance_server resource
1266+
if raw, ok := d.GetOk("private_network"); ok {
1267+
ph, err := newPrivateNICHandler(api.API, id, zone)
1268+
if err != nil {
1269+
return diag.FromErr(err)
1270+
}
1271+
1272+
for index := range raw.([]any) {
1273+
pnKey := fmt.Sprintf("private_network.%d.pn_id", index)
1274+
pn := d.Get(pnKey)
1275+
1276+
err := ph.detach(ctx, pn, d.Timeout(schema.TimeoutDelete))
1277+
if err != nil {
1278+
return diag.FromErr(err)
1279+
}
1280+
}
1281+
}
1282+
12651283
_, err = waitForServer(ctx, api.API, zone, id, d.Timeout(schema.TimeoutDelete))
12661284
if err != nil && !httperrors.Is404(err) {
12671285
return diag.FromErr(err)

0 commit comments

Comments
 (0)