Skip to content

Commit beaf114

Browse files
authored
Merge pull request #502 from Sesede/master
update inconsistent state when deleted on console
2 parents 8781a06 + d56d2a3 commit beaf114

File tree

4 files changed

+9
-3
lines changed

4 files changed

+9
-3
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
BUG FIXES:
44
* Resource: `tencentcloud_vpn_connection` fix `security_group_policy` update issue when apply repeatedly.
5+
* Resource: `tencentcloud_vpn_connection` fix inconsistent state when deleted on console.
56

67
## 1.41.1 (August 27, 2020)
78

tencentcloud/resource_tc_vpn_connection.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ import (
5454
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
5555
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
5656
"github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
57+
sdkErrors "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
5758
vpc "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc/v20170312"
5859
"github.com/terraform-providers/terraform-provider-tencentcloud/tencentcloud/internal/helper"
5960
)
@@ -528,6 +529,10 @@ func resourceTencentCloudVpnConnectionRead(d *schema.ResourceData, meta interfac
528529
if e != nil {
529530
log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%s]\n",
530531
logId, request.GetAction(), request.ToJsonString(), e.Error())
532+
ee, ok := e.(*sdkErrors.TencentCloudSDKError)
533+
if ok && ee.Code == VPCNotFound {
534+
return nil
535+
}
531536
return retryError(e)
532537
}
533538

@@ -538,7 +543,7 @@ func resourceTencentCloudVpnConnectionRead(d *schema.ResourceData, meta interfac
538543
log.Printf("[CRITAL]%s read VPN connection failed, reason:%s\n", logId, err.Error())
539544
return err
540545
}
541-
if len(response.Response.VpnConnectionSet) < 1 {
546+
if response == nil || response.Response == nil || len(response.Response.VpnConnectionSet) < 1 {
542547
d.SetId("")
543548
return nil
544549
}

tencentcloud/resource_tc_vpn_customer_gateway.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ func resourceTencentCloudVpnCustomerGatewayRead(d *schema.ResourceData, meta int
177177
log.Printf("[CRITAL]%s read VPN customer gateway failed, reason:%s\n", logId, err.Error())
178178
return err
179179
}
180-
if len(response.Response.CustomerGatewaySet) < 1 {
180+
if response == nil || response.Response == nil || len(response.Response.CustomerGatewaySet) < 1 {
181181
d.SetId("")
182182
return nil
183183
}

tencentcloud/service_tencentcloud_vpc.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3248,7 +3248,7 @@ func (me *VpcService) DescribeVpngwById(ctx context.Context, vpngwId string) (ha
32483248
log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%v]", logId, request.GetAction(), request.ToJsonString(), err)
32493249
return
32503250
}
3251-
if len(response.Response.VpnGatewaySet) < 1 {
3251+
if response == nil || response.Response == nil || len(response.Response.VpnGatewaySet) < 1 {
32523252
has = false
32533253
return
32543254
}

0 commit comments

Comments
 (0)