Commit d651948 1 parent 6a8cba4 commit d651948 Copy full SHA for d651948
File tree 2 files changed +29
-1
lines changed
packages/@aws-cdk/aws-eks
lib/cluster-resource-handler
2 files changed +29
-1
lines changed Original file line number Diff line number Diff line change @@ -196,7 +196,11 @@ export class ClusterResourceHandler extends ResourceHandler {
196
196
// if cluster is undefined (shouldnt happen) or status is not ACTIVE, we are
197
197
// not complete. note that the custom resource provider framework forbids
198
198
// returning attributes (Data) if isComplete is false.
199
- if ( cluster ?. status !== 'ACTIVE' ) {
199
+ if ( cluster ?. status === 'FAILED' ) {
200
+ // not very informative, unfortunately the response doesn't contain any error
201
+ // information :\
202
+ throw new Error ( 'Cluster is in a FAILED status' ) ;
203
+ } else if ( cluster ?. status !== 'ACTIVE' ) {
200
204
return {
201
205
IsComplete : false ,
202
206
} ;
Original file line number Diff line number Diff line change @@ -88,6 +88,30 @@ export = {
88
88
test . done ( ) ;
89
89
} ,
90
90
91
+ async 'isCreateComplete throws if cluster is FAILED' ( test : Test ) {
92
+ const handler = new ClusterResourceHandler ( mocks . client , mocks . newRequest ( 'Create' ) ) ;
93
+ mocks . simulateResponse . describeClusterResponseMockStatus = 'FAILED' ;
94
+ try {
95
+ await handler . isComplete ( ) ;
96
+ test . ok ( false , 'expected error to be thrown' ) ;
97
+ } catch ( err ) {
98
+ test . equal ( err . message , 'Cluster is in a FAILED status' ) ;
99
+ }
100
+ test . done ( ) ;
101
+ } ,
102
+
103
+ async 'isUpdateComplete throws if cluster is FAILED' ( test : Test ) {
104
+ const handler = new ClusterResourceHandler ( mocks . client , mocks . newRequest ( 'Update' ) ) ;
105
+ mocks . simulateResponse . describeClusterResponseMockStatus = 'FAILED' ;
106
+ try {
107
+ await handler . isComplete ( ) ;
108
+ test . ok ( false , 'expected error to be thrown' ) ;
109
+ } catch ( err ) {
110
+ test . equal ( err . message , 'Cluster is in a FAILED status' ) ;
111
+ }
112
+ test . done ( ) ;
113
+ } ,
114
+
91
115
async 'isCreateComplete is complete when cluster is ACTIVE' ( test : Test ) {
92
116
const handler = new ClusterResourceHandler ( mocks . client , mocks . newRequest ( 'Create' ) ) ;
93
117
mocks . simulateResponse . describeClusterResponseMockStatus = 'ACTIVE' ;
You can’t perform that action at this time.
0 commit comments