Skip to content

Commit 3324c08

Browse files
committedDec 23, 2022
r/aws_s3control_object_lambda_access_point_policy: Switch to 'WithoutTimeout' CRUD handlers (#15090).
Acceptance test output: % make testacc TESTARGS='-run=TestAccS3ControlObjectLambdaAccessPointPolicy_' PKG=s3control ACCTEST_PARALLELISM=3 ==> Checking that code complies with gofmt requirements... TF_ACC=1 go test ./internal/service/s3control/... -v -count 1 -parallel 3 -run=TestAccS3ControlObjectLambdaAccessPointPolicy_ -timeout 180m === RUN TestAccS3ControlObjectLambdaAccessPointPolicy_basic === PAUSE TestAccS3ControlObjectLambdaAccessPointPolicy_basic === RUN TestAccS3ControlObjectLambdaAccessPointPolicy_disappears === PAUSE TestAccS3ControlObjectLambdaAccessPointPolicy_disappears === RUN TestAccS3ControlObjectLambdaAccessPointPolicy_Disappears_accessPoint === PAUSE TestAccS3ControlObjectLambdaAccessPointPolicy_Disappears_accessPoint === RUN TestAccS3ControlObjectLambdaAccessPointPolicy_update === PAUSE TestAccS3ControlObjectLambdaAccessPointPolicy_update === CONT TestAccS3ControlObjectLambdaAccessPointPolicy_basic === CONT TestAccS3ControlObjectLambdaAccessPointPolicy_update === CONT TestAccS3ControlObjectLambdaAccessPointPolicy_Disappears_accessPoint --- PASS: TestAccS3ControlObjectLambdaAccessPointPolicy_basic (52.85s) === CONT TestAccS3ControlObjectLambdaAccessPointPolicy_disappears --- PASS: TestAccS3ControlObjectLambdaAccessPointPolicy_Disappears_accessPoint (55.72s) --- PASS: TestAccS3ControlObjectLambdaAccessPointPolicy_update (63.83s) --- PASS: TestAccS3ControlObjectLambdaAccessPointPolicy_disappears (42.69s) PASS ok github.com/hashicorp/terraform-provider-aws/internal/service/s3control 100.602s
1 parent 213cb72 commit 3324c08

5 files changed

+37
-37
lines changed
 

‎internal/service/s3control/object_lambda_access_point.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ func resourceObjectLambdaAccessPointRead(ctx context.Context, d *schema.Resource
165165
return diag.FromErr(err)
166166
}
167167

168-
output, err := FindObjectLambdaAccessPointByAccountIDAndName(ctx, conn, accountID, name)
168+
output, err := FindObjectLambdaAccessPointByTwoPartKey(ctx, conn, accountID, name)
169169

170170
if !d.IsNewResource() && tfresource.NotFound(err) {
171171
log.Printf("[WARN] S3 Object Lambda Access Point (%s) not found, removing from state", d.Id())
@@ -248,7 +248,7 @@ func resourceObjectLambdaAccessPointDelete(ctx context.Context, d *schema.Resour
248248
return nil
249249
}
250250

251-
func FindObjectLambdaAccessPointByAccountIDAndName(ctx context.Context, conn *s3control.S3Control, accountID string, name string) (*s3control.ObjectLambdaConfiguration, error) {
251+
func FindObjectLambdaAccessPointByTwoPartKey(ctx context.Context, conn *s3control.S3Control, accountID string, name string) (*s3control.ObjectLambdaConfiguration, error) {
252252
input := &s3control.GetAccessPointConfigurationForObjectLambdaInput{
253253
AccountId: aws.String(accountID),
254254
Name: aws.String(name),

‎internal/service/s3control/object_lambda_access_point_policy.go

+29-30
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
package s3control
22

33
import (
4-
"fmt"
4+
"context"
55
"log"
66

77
"github.com/aws/aws-sdk-go/aws"
88
"github.com/aws/aws-sdk-go/service/s3control"
99
"github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2/tfawserr"
10+
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
1011
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
1112
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
1213
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/structure"
@@ -22,10 +23,10 @@ func init() {
2223

2324
func resourceObjectLambdaAccessPointPolicy() *schema.Resource {
2425
return &schema.Resource{
25-
Create: resourceObjectLambdaAccessPointPolicyCreate,
26-
Read: resourceObjectLambdaAccessPointPolicyRead,
27-
Update: resourceObjectLambdaAccessPointPolicyUpdate,
28-
Delete: resourceObjectLambdaAccessPointPolicyDelete,
26+
CreateWithoutTimeout: resourceObjectLambdaAccessPointPolicyCreate,
27+
ReadWithoutTimeout: resourceObjectLambdaAccessPointPolicyRead,
28+
UpdateWithoutTimeout: resourceObjectLambdaAccessPointPolicyUpdate,
29+
DeleteWithoutTimeout: resourceObjectLambdaAccessPointPolicyDelete,
2930

3031
Importer: &schema.ResourceImporter{
3132
State: schema.ImportStatePassthrough,
@@ -62,7 +63,7 @@ func resourceObjectLambdaAccessPointPolicy() *schema.Resource {
6263
}
6364
}
6465

65-
func resourceObjectLambdaAccessPointPolicyCreate(d *schema.ResourceData, meta interface{}) error {
66+
func resourceObjectLambdaAccessPointPolicyCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
6667
conn := meta.(*conns.AWSClient).S3ControlConn()
6768

6869
accountID := meta.(*conns.AWSClient).AccountID
@@ -75,7 +76,7 @@ func resourceObjectLambdaAccessPointPolicyCreate(d *schema.ResourceData, meta in
7576
policy, err := structure.NormalizeJsonString(d.Get("policy").(string))
7677

7778
if err != nil {
78-
return fmt.Errorf("policy (%s) is invalid JSON: %w", d.Get("policy").(string), err)
79+
return diag.Errorf("policy (%s) is invalid JSON: %s", d.Get("policy").(string), err)
7980
}
8081

8182
input := &s3control.PutAccessPointPolicyForObjectLambdaInput{
@@ -84,28 +85,27 @@ func resourceObjectLambdaAccessPointPolicyCreate(d *schema.ResourceData, meta in
8485
Policy: aws.String(policy),
8586
}
8687

87-
log.Printf("[DEBUG] Creating S3 Object Lambda Access Point Policy: %s", input)
88-
_, err = conn.PutAccessPointPolicyForObjectLambda(input)
88+
_, err = conn.PutAccessPointPolicyForObjectLambdaWithContext(ctx, input)
8989

9090
if err != nil {
91-
return fmt.Errorf("error creating S3 Object Lambda Access Point (%s) Policy: %w", resourceID, err)
91+
return diag.Errorf("creating S3 Object Lambda Access Point (%s) Policy: %s", resourceID, err)
9292
}
9393

9494
d.SetId(resourceID)
9595

96-
return resourceObjectLambdaAccessPointPolicyRead(d, meta)
96+
return resourceObjectLambdaAccessPointPolicyRead(ctx, d, meta)
9797
}
9898

99-
func resourceObjectLambdaAccessPointPolicyRead(d *schema.ResourceData, meta interface{}) error {
99+
func resourceObjectLambdaAccessPointPolicyRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
100100
conn := meta.(*conns.AWSClient).S3ControlConn()
101101

102102
accountID, name, err := ObjectLambdaAccessPointParseResourceID(d.Id())
103103

104104
if err != nil {
105-
return err
105+
return diag.FromErr(err)
106106
}
107107

108-
policy, status, err := FindObjectLambdaAccessPointPolicyAndStatusByAccountIDAndName(conn, accountID, name)
108+
policy, status, err := FindObjectLambdaAccessPointPolicyAndStatusByTwoPartKey(ctx, conn, accountID, name)
109109

110110
if !d.IsNewResource() && tfresource.NotFound(err) {
111111
log.Printf("[WARN] S3 Object Lambda Access Point Policy (%s) not found, removing from state", d.Id())
@@ -114,7 +114,7 @@ func resourceObjectLambdaAccessPointPolicyRead(d *schema.ResourceData, meta inte
114114
}
115115

116116
if err != nil {
117-
return fmt.Errorf("error reading S3 Object Lambda Access Point Policy (%s): %w", d.Id(), err)
117+
return diag.Errorf("reading S3 Object Lambda Access Point Policy (%s): %s", d.Id(), err)
118118
}
119119

120120
d.Set("account_id", accountID)
@@ -125,7 +125,7 @@ func resourceObjectLambdaAccessPointPolicyRead(d *schema.ResourceData, meta inte
125125
policyToSet, err := verify.PolicyToSet(d.Get("policy").(string), policy)
126126

127127
if err != nil {
128-
return err
128+
return diag.FromErr(err)
129129
}
130130

131131
d.Set("policy", policyToSet)
@@ -136,19 +136,19 @@ func resourceObjectLambdaAccessPointPolicyRead(d *schema.ResourceData, meta inte
136136
return nil
137137
}
138138

139-
func resourceObjectLambdaAccessPointPolicyUpdate(d *schema.ResourceData, meta interface{}) error {
139+
func resourceObjectLambdaAccessPointPolicyUpdate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
140140
conn := meta.(*conns.AWSClient).S3ControlConn()
141141

142142
accountID, name, err := ObjectLambdaAccessPointParseResourceID(d.Id())
143143

144144
if err != nil {
145-
return err
145+
return diag.FromErr(err)
146146
}
147147

148148
policy, err := structure.NormalizeJsonString(d.Get("policy").(string))
149149

150150
if err != nil {
151-
return fmt.Errorf("policy (%s) is invalid JSON: %w", d.Get("policy").(string), err)
151+
return diag.Errorf("policy (%s) is invalid JSON: %s", d.Get("policy").(string), err)
152152
}
153153

154154
input := &s3control.PutAccessPointPolicyForObjectLambdaInput{
@@ -157,27 +157,26 @@ func resourceObjectLambdaAccessPointPolicyUpdate(d *schema.ResourceData, meta in
157157
Policy: aws.String(policy),
158158
}
159159

160-
log.Printf("[DEBUG] Updating S3 Object Lambda Access Point Policy: %s", input)
161-
_, err = conn.PutAccessPointPolicyForObjectLambda(input)
160+
_, err = conn.PutAccessPointPolicyForObjectLambdaWithContext(ctx, input)
162161

163162
if err != nil {
164-
return fmt.Errorf("error updating S3 Object Lambda Access Point Policy (%s): %w", d.Id(), err)
163+
return diag.Errorf("updating S3 Object Lambda Access Point Policy (%s): %s", d.Id(), err)
165164
}
166165

167-
return resourceObjectLambdaAccessPointPolicyRead(d, meta)
166+
return resourceObjectLambdaAccessPointPolicyRead(ctx, d, meta)
168167
}
169168

170-
func resourceObjectLambdaAccessPointPolicyDelete(d *schema.ResourceData, meta interface{}) error {
169+
func resourceObjectLambdaAccessPointPolicyDelete(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
171170
conn := meta.(*conns.AWSClient).S3ControlConn()
172171

173172
accountID, name, err := ObjectLambdaAccessPointParseResourceID(d.Id())
174173

175174
if err != nil {
176-
return err
175+
return diag.FromErr(err)
177176
}
178177

179178
log.Printf("[DEBUG] Deleting S3 Object Lambda Access Point Policy: %s", d.Id())
180-
_, err = conn.DeleteAccessPointPolicyForObjectLambda(&s3control.DeleteAccessPointPolicyForObjectLambdaInput{
179+
_, err = conn.DeleteAccessPointPolicyForObjectLambdaWithContext(ctx, &s3control.DeleteAccessPointPolicyForObjectLambdaInput{
181180
AccountId: aws.String(accountID),
182181
Name: aws.String(name),
183182
})
@@ -187,19 +186,19 @@ func resourceObjectLambdaAccessPointPolicyDelete(d *schema.ResourceData, meta in
187186
}
188187

189188
if err != nil {
190-
return fmt.Errorf("error deleting S3 Object Lambda Access Point Policy (%s): %w", d.Id(), err)
189+
return diag.Errorf("deleting S3 Object Lambda Access Point Policy (%s): %s", d.Id(), err)
191190
}
192191

193192
return nil
194193
}
195194

196-
func FindObjectLambdaAccessPointPolicyAndStatusByAccountIDAndName(conn *s3control.S3Control, accountID string, name string) (string, *s3control.PolicyStatus, error) {
195+
func FindObjectLambdaAccessPointPolicyAndStatusByTwoPartKey(ctx context.Context, conn *s3control.S3Control, accountID string, name string) (string, *s3control.PolicyStatus, error) {
197196
input1 := &s3control.GetAccessPointPolicyForObjectLambdaInput{
198197
AccountId: aws.String(accountID),
199198
Name: aws.String(name),
200199
}
201200

202-
output1, err := conn.GetAccessPointPolicyForObjectLambda(input1)
201+
output1, err := conn.GetAccessPointPolicyForObjectLambdaWithContext(ctx, input1)
203202

204203
if tfawserr.ErrCodeEquals(err, errCodeNoSuchAccessPoint, errCodeNoSuchAccessPointPolicy) {
205204
return "", nil, &resource.NotFoundError{
@@ -227,7 +226,7 @@ func FindObjectLambdaAccessPointPolicyAndStatusByAccountIDAndName(conn *s3contro
227226
Name: aws.String(name),
228227
}
229228

230-
output2, err := conn.GetAccessPointPolicyStatusForObjectLambda(input2)
229+
output2, err := conn.GetAccessPointPolicyStatusForObjectLambdaWithContext(ctx, input2)
231230

232231
if tfawserr.ErrCodeEquals(err, errCodeNoSuchAccessPoint, errCodeNoSuchAccessPointPolicy) {
233232
return "", nil, &resource.NotFoundError{

‎internal/service/s3control/object_lambda_access_point_policy_test.go

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

33
import (
4+
"context"
45
"fmt"
56
"testing"
67

@@ -141,7 +142,7 @@ func testAccCheckObjectLambdaAccessPointPolicyDestroy(s *terraform.State) error
141142
return err
142143
}
143144

144-
_, _, err = tfs3control.FindObjectLambdaAccessPointPolicyAndStatusByAccountIDAndName(conn, accountID, name)
145+
_, _, err = tfs3control.FindObjectLambdaAccessPointPolicyAndStatusByTwoPartKey(context.Background(), conn, accountID, name)
145146

146147
if tfresource.NotFound(err) {
147148
continue
@@ -176,7 +177,7 @@ func testAccCheckObjectLambdaAccessPointPolicyExists(n string) resource.TestChec
176177

177178
conn := acctest.Provider.Meta().(*conns.AWSClient).S3ControlConn()
178179

179-
_, _, err = tfs3control.FindObjectLambdaAccessPointPolicyAndStatusByAccountIDAndName(conn, accountID, name)
180+
_, _, err = tfs3control.FindObjectLambdaAccessPointPolicyAndStatusByTwoPartKey(context.Background(), conn, accountID, name)
180181

181182
return err
182183
}

‎internal/service/s3control/object_lambda_access_point_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ func testAccCheckObjectLambdaAccessPointDestroy(s *terraform.State) error {
161161
return err
162162
}
163163

164-
_, err = tfs3control.FindObjectLambdaAccessPointByAccountIDAndName(context.Background(), conn, accountID, name)
164+
_, err = tfs3control.FindObjectLambdaAccessPointByTwoPartKey(context.Background(), conn, accountID, name)
165165

166166
if tfresource.NotFound(err) {
167167
continue
@@ -196,7 +196,7 @@ func testAccCheckObjectLambdaAccessPointExists(n string, v *s3control.ObjectLamb
196196

197197
conn := acctest.Provider.Meta().(*conns.AWSClient).S3ControlConn()
198198

199-
output, err := tfs3control.FindObjectLambdaAccessPointByAccountIDAndName(context.Background(), conn, accountID, name)
199+
output, err := tfs3control.FindObjectLambdaAccessPointByTwoPartKey(context.Background(), conn, accountID, name)
200200

201201
if err != nil {
202202
return err

‎internal/service/s3control/sweep.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ func sweepObjectLambdaAccessPoints(region string) error {
162162
}
163163

164164
for _, v := range page.ObjectLambdaAccessPointList {
165-
r := ResourceObjectLambdaAccessPoint()
165+
r := resourceObjectLambdaAccessPoint()
166166
d := r.Data(nil)
167167
d.SetId(ObjectLambdaAccessPointCreateResourceID(accountID, aws.StringValue(v.Name)))
168168

0 commit comments

Comments
 (0)