@@ -51,6 +51,7 @@ func ResourceTencentCloudVpcEndPoint() *schema.Resource {
5151
5252 "end_point_vip" : {
5353 Optional : true ,
54+ Computed : true ,
5455 Type : schema .TypeString ,
5556 Description : "VIP of endpoint ip." ,
5657 },
@@ -128,13 +129,24 @@ func resourceTencentCloudVpcEndPointCreate(d *schema.ResourceData, meta interfac
128129 } else {
129130 log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " , logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
130131 }
132+
133+ if result == nil || result .Response == nil || result .Response .EndPoint == nil {
134+ return resource .NonRetryableError (fmt .Errorf ("Create vpc endPoint failed, Response is nil." ))
135+ }
136+
131137 response = result
132138 return nil
133139 })
140+
134141 if err != nil {
135142 log .Printf ("[CRITAL]%s create vpc endPoint failed, reason:%+v" , logId , err )
136143 return err
137144 }
145+
146+ if response .Response .EndPoint .EndPointId == nil {
147+ return fmt .Errorf ("EndPointId is nil." )
148+ }
149+
138150 endPointId = * response .Response .EndPoint .EndPointId
139151 d .SetId (endPointId )
140152
@@ -258,20 +270,22 @@ func resourceTencentCloudVpcEndPointUpdate(d *schema.ResourceData, meta interfac
258270 if v , ok := d .GetOk ("security_groups_ids" ); ok {
259271 request .SecurityGroupIds = helper .InterfacesStringsPoint (v .([]interface {}))
260272 }
261- }
262273
263- err := resource .Retry (tccommon .WriteRetryTimeout , func () * resource.RetryError {
264- result , e := meta .(tccommon.ProviderMeta ).GetAPIV3Conn ().UseVpcClient ().ModifyVpcEndPointAttribute (request )
265- if e != nil {
266- return tccommon .RetryError (e )
267- } else {
268- log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " , logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
274+ err := resource .Retry (tccommon .WriteRetryTimeout , func () * resource.RetryError {
275+ result , e := meta .(tccommon.ProviderMeta ).GetAPIV3Conn ().UseVpcClient ().ModifyVpcEndPointAttribute (request )
276+ if e != nil {
277+ return tccommon .RetryError (e )
278+ } else {
279+ log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " , logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
280+ }
281+
282+ return nil
283+ })
284+
285+ if err != nil {
286+ log .Printf ("[CRITAL]%s create vpc endPoint failed, reason:%+v" , logId , err )
287+ return err
269288 }
270- return nil
271- })
272- if err != nil {
273- log .Printf ("[CRITAL]%s create vpc endPoint failed, reason:%+v" , logId , err )
274- return err
275289 }
276290
277291 return resourceTencentCloudVpcEndPointRead (d , meta )
0 commit comments