@@ -23,6 +23,7 @@ import (
2323 "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
2424 "github.com/mitchellh/go-homedir"
2525 "github.com/pkg/errors"
26+ sdkErrorsIntlEn "github.com/tencentcloud/tencentcloud-sdk-go-intl-en/tencentcloud/common/errors"
2627 sdkErrors "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
2728 "github.com/tencentyun/cos-go-sdk-v5"
2829 "gopkg.in/yaml.v2"
@@ -202,7 +203,7 @@ func InconsistentCheck(d *schema.ResourceData, meta interface{}) func() {
202203// RetryError returns retry error
203204func RetryError (err error , additionRetryableError ... string ) * resource.RetryError {
204205 switch realErr := errors .Cause (err ).(type ) {
205- case * sdkErrors.TencentCloudSDKError :
206+ case * sdkErrors.TencentCloudSDKError , * sdkErrorsIntlEn. TencentCloudSDKError :
206207 if IsExpectError (realErr , retryableErrorCode ) {
207208 log .Printf ("[CRITAL] Retryable defined error: %v" , err )
208209 return resource .RetryableError (err )
@@ -276,6 +277,22 @@ func isCosExpectedError(err error, expectedError []string) bool {
276277func IsExpectError (err error , expectError []string ) bool {
277278 e , ok := err .(* sdkErrors.TencentCloudSDKError )
278279 if ! ok {
280+ if eIntlEn , ok := err .(* sdkErrorsIntlEn.TencentCloudSDKError ); ok {
281+ longCode := eIntlEn .Code
282+ if IsContains (expectError , longCode ) {
283+ return true
284+ }
285+
286+ if strings .Contains (longCode , "." ) {
287+ shortCode := strings .Split (longCode , "." )[0 ]
288+ if IsContains (expectError , shortCode ) {
289+ return true
290+ }
291+ }
292+
293+ return false
294+ }
295+
279296 return false
280297 }
281298
0 commit comments