Skip to content

Commit cd127ed

Browse files
committed
r/aws_ec2_transit_gateway_connect_peer: Switch to Terraform Plugin SDK V2 'WithoutTimeout' signatures (#15090).
1 parent 17ff7ad commit cd127ed

File tree

1 file changed

+27
-27
lines changed

1 file changed

+27
-27
lines changed

internal/service/ec2/transit_gateway_connect_peer.go

+27-27
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package ec2
22

33
import (
4-
"fmt"
4+
"context"
55
"log"
66
"regexp"
77
"time"
88

99
"github.com/aws/aws-sdk-go/aws"
1010
"github.com/aws/aws-sdk-go/service/ec2"
1111
"github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2/tfawserr"
12+
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
1213
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
1314
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
1415
"github.com/hashicorp/terraform-provider-aws/internal/conns"
@@ -19,10 +20,10 @@ import (
1920

2021
func ResourceTransitGatewayConnectPeer() *schema.Resource {
2122
return &schema.Resource{
22-
Create: resourceTransitGatewayConnectPeerCreate,
23-
Read: resourceTransitGatewayConnectPeerRead,
24-
Update: resourceTransitGatewayConnectPeerUpdate,
25-
Delete: resourceTransitGatewayConnectPeerDelete,
23+
CreateWithoutTimeout: resourceTransitGatewayConnectPeerCreate,
24+
ReadWithoutTimeout: resourceTransitGatewayConnectPeerRead,
25+
UpdateWithoutTimeout: resourceTransitGatewayConnectPeerUpdate,
26+
DeleteWithoutTimeout: resourceTransitGatewayConnectPeerDelete,
2627

2728
Importer: &schema.ResourceImporter{
2829
State: schema.ImportStatePassthrough,
@@ -89,7 +90,7 @@ func ResourceTransitGatewayConnectPeer() *schema.Resource {
8990
}
9091
}
9192

92-
func resourceTransitGatewayConnectPeerCreate(d *schema.ResourceData, meta interface{}) error {
93+
func resourceTransitGatewayConnectPeerCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
9394
conn := meta.(*conns.AWSClient).EC2Conn
9495
defaultTagsConfig := meta.(*conns.AWSClient).DefaultTagsConfig
9596
tags := defaultTagsConfig.MergeTags(tftags.New(d.Get("tags").(map[string]interface{})))
@@ -120,20 +121,21 @@ func resourceTransitGatewayConnectPeerCreate(d *schema.ResourceData, meta interf
120121

121122
log.Printf("[DEBUG] Creating EC2 Transit Gateway Connect Peer: %s", input)
122123
output, err := conn.CreateTransitGatewayConnectPeer(input)
124+
123125
if err != nil {
124-
return fmt.Errorf("error creating EC2 Transit Gateway Connect Peer: %s", err)
126+
return diag.Errorf("error creating EC2 Transit Gateway Connect Peer: %s", err)
125127
}
126128

127129
d.SetId(aws.StringValue(output.TransitGatewayConnectPeer.TransitGatewayConnectPeerId))
128130

129-
if err := waitForTransitGatewayConnectPeerCreation(conn, d.Id()); err != nil {
130-
return fmt.Errorf("error waiting for EC2 Transit Gateway Connect Peer (%s) availability: %s", d.Id(), err)
131+
if _, err := WaitTransitGatewayConnectPeerCreated(conn, d.Id(), d.Timeout(schema.TimeoutCreate)); err != nil {
132+
return diag.Errorf("error waiting for EC2 Transit Gateway Connect Peer (%s) create: %s", d.Id(), err)
131133
}
132134

133-
return resourceTransitGatewayConnectPeerRead(d, meta)
135+
return resourceTransitGatewayConnectPeerRead(ctx, d, meta)
134136
}
135137

136-
func resourceTransitGatewayConnectPeerRead(d *schema.ResourceData, meta interface{}) error {
138+
func resourceTransitGatewayConnectPeerRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
137139
conn := meta.(*conns.AWSClient).EC2Conn
138140
defaultTagsConfig := meta.(*conns.AWSClient).DefaultTagsConfig
139141
ignoreTagsConfig := meta.(*conns.AWSClient).IgnoreTagsConfig
@@ -147,7 +149,7 @@ func resourceTransitGatewayConnectPeerRead(d *schema.ResourceData, meta interfac
147149
}
148150

149151
if err != nil {
150-
return fmt.Errorf("error reading EC2 Transit Gateway Connect Peer: %s", err)
152+
return diag.Errorf("error reading EC2 Transit Gateway Connect Peer: %s", err)
151153
}
152154

153155
if transitGatewayConnectPeer == nil {
@@ -167,11 +169,11 @@ func resourceTransitGatewayConnectPeerRead(d *schema.ResourceData, meta interfac
167169

168170
//lintignore:AWSR002
169171
if err := d.Set("tags", tags.RemoveDefaultConfig(defaultTagsConfig).Map()); err != nil {
170-
return fmt.Errorf("error setting tags: %w", err)
172+
return diag.Errorf("error setting tags: %s", err)
171173
}
172174

173175
if err := d.Set("tags_all", tags.Map()); err != nil {
174-
return fmt.Errorf("error setting tags_all: %w", err)
176+
return diag.Errorf("error setting tags_all: %s", err)
175177
}
176178

177179
d.Set("bgp_asn", transitGatewayConnectPeer.ConnectPeerConfiguration.BgpConfigurations[0].PeerAsn)
@@ -183,40 +185,38 @@ func resourceTransitGatewayConnectPeerRead(d *schema.ResourceData, meta interfac
183185
return nil
184186
}
185187

186-
func resourceTransitGatewayConnectPeerUpdate(d *schema.ResourceData, meta interface{}) error {
188+
func resourceTransitGatewayConnectPeerUpdate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
187189
conn := meta.(*conns.AWSClient).EC2Conn
188190

189191
if d.HasChange("tags_all") {
190192
o, n := d.GetChange("tags_all")
191193

192194
if err := UpdateTags(conn, d.Id(), o, n); err != nil {
193-
return fmt.Errorf("error updating EC2 Transit Gateway Connect Peer (%s) tags: %s", d.Id(), err)
195+
return diag.Errorf("error updating EC2 Transit Gateway Connect Peer (%s) tags: %s", d.Id(), err)
194196
}
195197
}
196198

197-
return nil
199+
return resourceTransitGatewayConnectPeerRead(ctx, d, meta)
198200
}
199201

200-
func resourceTransitGatewayConnectPeerDelete(d *schema.ResourceData, meta interface{}) error {
202+
func resourceTransitGatewayConnectPeerDelete(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics {
201203
conn := meta.(*conns.AWSClient).EC2Conn
202204

203-
input := &ec2.DeleteTransitGatewayConnectPeerInput{
205+
log.Printf("[DEBUG] Deleting EC2 Transit Gateway Connect Peer: %s", d.Id())
206+
_, err := conn.DeleteTransitGatewayConnectPeer(&ec2.DeleteTransitGatewayConnectPeerInput{
204207
TransitGatewayConnectPeerId: aws.String(d.Id()),
205-
}
206-
207-
log.Printf("[DEBUG] Deleting EC2 Transit Gateway Connect Peer (%s): %s", d.Id(), input)
208-
_, err := conn.DeleteTransitGatewayConnectPeer(input)
208+
})
209209

210-
if tfawserr.ErrMessageContains(err, "InvalidTransitGatewayConnectPeerID.NotFound", "") {
210+
if tfawserr.ErrCodeEquals(err, ErrCodeInvalidTransitGatewayConnectPeerIDNotFound) {
211211
return nil
212212
}
213213

214214
if err != nil {
215-
return fmt.Errorf("error deleting EC2 Transit Gateway Connect Peer: %s", err)
215+
return diag.Errorf("error deleting EC2 Transit Gateway Connect Peer: %s", err)
216216
}
217217

218-
if err := WaitForTransitGatewayConnectPeerDeletion(conn, d.Id()); err != nil {
219-
return fmt.Errorf("error waiting for EC2 Transit Gateway Connect Peer (%s) deletion: %s", d.Id(), err)
218+
if _, err := WaitTransitGatewayConnectPeerDeleted(conn, d.Id(), d.Timeout(schema.TimeoutDelete)); err != nil {
219+
return diag.Errorf("error waiting for EC2 Transit Gateway Connect Peer (%s) delete: %s", d.Id(), err)
220220
}
221221

222222
return nil

0 commit comments

Comments
 (0)