diff --git a/.changelog/2913.txt b/.changelog/2913.txt new file mode 100644 index 0000000000..a72a17420a --- /dev/null +++ b/.changelog/2913.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +resource/tencentcloud_ccn_attachment: fix attachment with ccn_uin +``` \ No newline at end of file diff --git a/tencentcloud/services/ccn/resource_tc_ccn_attachment.go b/tencentcloud/services/ccn/resource_tc_ccn_attachment.go index d8fce3feed..630f9027b1 100644 --- a/tencentcloud/services/ccn/resource_tc_ccn_attachment.go +++ b/tencentcloud/services/ccn/resource_tc_ccn_attachment.go @@ -174,33 +174,36 @@ func resourceTencentCloudCcnAttachmentRead(d *schema.ResourceData, meta interfac instanceType = d.Get("instance_type").(string) instanceRegion = d.Get("instance_region").(string) instanceId = d.Get("instance_id").(string) - onlineHas = true ) - err := resource.Retry(tccommon.ReadRetryTimeout, func() *resource.RetryError { - _, has, e := service.DescribeCcn(ctx, ccnId) - if e != nil { - return tccommon.RetryError(e) - } + if _, ok := d.GetOk("ccn_uin"); !ok { + onlineHas := true - if has == 0 { - d.SetId("") - onlineHas = false - return nil - } + err := resource.Retry(tccommon.ReadRetryTimeout, func() *resource.RetryError { + _, has, e := service.DescribeCcn(ctx, ccnId) + if e != nil { + return tccommon.RetryError(e) + } - return nil - }) + if has == 0 { + d.SetId("") + onlineHas = false + return nil + } - if err != nil { - return err - } + return nil + }) - if !onlineHas { - return nil + if err != nil { + return err + } + + if !onlineHas { + return nil + } } - err = resource.Retry(tccommon.ReadRetryTimeout, func() *resource.RetryError { + err := resource.Retry(tccommon.ReadRetryTimeout, func() *resource.RetryError { info, has, e := service.DescribeCcnAttachedInstance(ctx, ccnId, instanceRegion, instanceType, instanceId) if e != nil { return tccommon.RetryError(e)