Skip to content

Commit f43ca1e

Browse files
author
Alex Qiu
authored
Support auto creation of missing benchmark resources (SSPROD-12557) (#168)
1 parent 92c8a32 commit f43ca1e

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

sysdig/resource_sysdig_secure_benchmark_task.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package sysdig
33
import (
44
"context"
55
"strconv"
6+
"strings"
67
"time"
78

89
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
@@ -95,6 +96,9 @@ func resourceSysdigSecureBenchmarkTaskRead(ctx context.Context, d *schema.Resour
9596
benchmarkTask, err := client.GetBenchmarkTask(ctx, d.Id())
9697
if err != nil {
9798
d.SetId("")
99+
if strings.Contains(err.Error(), "404") {
100+
return nil
101+
}
98102
return diag.FromErr(err)
99103
}
100104

@@ -119,6 +123,9 @@ func resourceSysdigSecureBenchmarkTaskUpdate(ctx context.Context, d *schema.Reso
119123

120124
if err := client.SetBenchmarkTaskEnabled(ctx, d.Id(), enabled); err != nil {
121125
d.SetId("")
126+
if strings.Contains(err.Error(), "404") {
127+
return nil
128+
}
122129
return diag.FromErr(err)
123130
}
124131

@@ -135,6 +142,10 @@ func resourceSysdigSecureBenchmarkTaskDelete(ctx context.Context, d *schema.Reso
135142

136143
err = client.DeleteBenchmarkTask(ctx, d.Id())
137144
if err != nil {
145+
d.SetId("")
146+
if strings.Contains(err.Error(), "404") {
147+
return nil
148+
}
138149
return diag.FromErr(err)
139150
}
140151
return nil

sysdig/resource_sysdig_secure_cloud_account.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package sysdig
22

33
import (
44
"context"
5+
"strings"
56
"time"
67

78
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
@@ -93,6 +94,9 @@ func resourceSysdigSecureCloudAccountRead(ctx context.Context, d *schema.Resourc
9394
cloudAccount, err := client.GetCloudAccountById(ctx, d.Id())
9495
if err != nil {
9596
d.SetId("")
97+
if strings.Contains(err.Error(), "404") {
98+
return nil
99+
}
96100
return diag.FromErr(err)
97101
}
98102

@@ -114,6 +118,9 @@ func resourceSysdigSecureCloudAccountUpdate(ctx context.Context, d *schema.Resou
114118

115119
_, err = client.UpdateCloudAccount(ctx, d.Id(), cloudAccountFromResourceData(d))
116120
if err != nil {
121+
if strings.Contains(err.Error(), "404") {
122+
return nil
123+
}
117124
return diag.FromErr(err)
118125
}
119126

@@ -128,6 +135,9 @@ func resourceSysdigSecureCloudAccountDelete(ctx context.Context, d *schema.Resou
128135

129136
err = client.DeleteCloudAccount(ctx, d.Id())
130137
if err != nil {
138+
if strings.Contains(err.Error(), "404") {
139+
return nil
140+
}
131141
return diag.FromErr(err)
132142
}
133143
return nil

0 commit comments

Comments
 (0)