Skip to content

Commit aa244ad

Browse files
committed
Added - Update error message for work request error
1 parent 48b4596 commit aa244ad

File tree

2 files changed

+23
-6
lines changed

2 files changed

+23
-6
lines changed

oci/crud_helpers.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ func waitForStateRefreshForHybridPolling(workRequestClient *oci_work_requests.Wo
270270
retryPolicy := GetRetryPolicy(disableFoundRetries, "work_request")
271271
retryPolicy.ShouldRetryOperation = workRequestShouldRetryFunc(timeout)
272272
e = getWorkRequestErrors(workRequestClient, workRequestIds, retryPolicy, entityType, action)
273-
return handleError(sync, e)
273+
return e
274274
}
275275

276276
if _, ok := e.(*resource.TimeoutError); ok {
@@ -527,7 +527,7 @@ func waitForStateRefresh(sync StatefulResource, timeout time.Duration, operation
527527
} else {
528528
e = fmt.Errorf("During %s, service reported unexpected state: %s.", operationName, sync.State())
529529
}
530-
return handleError(sync, e)
530+
return e
531531
}
532532

533533
if _, ok := e.(*resource.TimeoutError); ok {

oci/errors.go

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ type customError struct {
3838
// Create new error format for Terraform output
3939
func newCustomError(sync interface{}, err error) error {
4040
var tfError customError
41+
errorMessage := err.Error()
4142

4243
// Service error
4344
if failure, isServiceError := oci_common.IsServiceError(err); isServiceError {
@@ -49,20 +50,28 @@ func newCustomError(sync interface{}, err error) error {
4950
OpcRequestID: failure.GetOpcRequestID(),
5051
Service: getServiceName(sync),
5152
}
52-
} else if strings.Contains(err.Error(), "timeout while waiting for state") {
53+
} else if strings.Contains(errorMessage, "timeout while waiting for state") {
5354
// Timeout error
5455
tfError = customError{
5556
TypeOfError: TimeoutError,
5657
ErrorCodeName: "Operation Timeout",
57-
Message: err.Error(),
58+
Message: errorMessage,
5859
Service: getServiceName(sync),
5960
}
6061
// Unexpected state error
61-
} else if strings.Contains(err.Error(), "unexpected state") {
62+
} else if strings.Contains(errorMessage, "unexpected state") {
6263
tfError = customError{
6364
TypeOfError: UnexpectedStateError,
6465
ErrorCodeName: "Unexpected LifeCycle state",
65-
Message: err.Error(),
66+
Message: errorMessage,
67+
Service: getServiceName(sync),
68+
ResourceOCID: getResourceOCID(sync),
69+
}
70+
} else if strings.Contains(errorMessage, "work request") {
71+
tfError = customError{
72+
TypeOfError: WorkRequestError,
73+
ErrorCodeName: "Work Request error",
74+
Message: errorMessage,
6675
Service: getServiceName(sync),
6776
ResourceOCID: getResourceOCID(sync),
6877
}
@@ -101,6 +110,14 @@ func (tfE customError) Error() error {
101110
"Resource OCID: %s \n"+
102111
"Suggestion: %s\n",
103112
tfE.ErrorCodeName, tfE.VersionError, tfE.Service, tfE.Message, tfE.ResourceOCID, tfE.Suggestion)
113+
case WorkRequestError:
114+
return fmt.Errorf("%s \n"+
115+
"%s \n"+
116+
"Service: %s \n"+
117+
"Error Message: %s \n"+
118+
"Resource OCID: %s \n"+
119+
"Suggestion: %s\n",
120+
tfE.ErrorCodeName, tfE.VersionError, tfE.Service, tfE.Message, tfE.ResourceOCID, tfE.Suggestion)
104121
default:
105122
return fmt.Errorf(tfE.Message)
106123
}

0 commit comments

Comments
 (0)