@@ -271,15 +271,26 @@ def execute_change_set(
271
271
)
272
272
273
273
def _run (* args ):
274
- result = change_set_executor .execute ()
275
- new_stack_status = StackStatus .UPDATE_COMPLETE
276
- if change_set .change_set_type == ChangeSetType .CREATE :
277
- new_stack_status = StackStatus .CREATE_COMPLETE
278
- change_set .stack .set_stack_status (new_stack_status )
279
- change_set .set_execution_status (ExecutionStatus .EXECUTE_COMPLETE )
280
- change_set .stack .resolved_resources = result .resources
281
- change_set .stack .resolved_parameters = result .parameters
282
- change_set .stack .resolved_outputs = result .outputs
274
+ try :
275
+ result = change_set_executor .execute ()
276
+ new_stack_status = StackStatus .UPDATE_COMPLETE
277
+ if change_set .change_set_type == ChangeSetType .CREATE :
278
+ new_stack_status = StackStatus .CREATE_COMPLETE
279
+ change_set .stack .set_stack_status (new_stack_status )
280
+ change_set .set_execution_status (ExecutionStatus .EXECUTE_COMPLETE )
281
+ change_set .stack .resolved_resources = result .resources
282
+ change_set .stack .resolved_parameters = result .parameters
283
+ change_set .stack .resolved_outputs = result .outputs
284
+ except Exception as e :
285
+ LOG .error (
286
+ "Execute change set failed: %s" , e , exc_info = LOG .isEnabledFor (logging .WARNING )
287
+ )
288
+ new_stack_status = StackStatus .UPDATE_FAILED
289
+ if change_set .change_set_type == ChangeSetType .CREATE :
290
+ new_stack_status = StackStatus .CREATE_FAILED
291
+
292
+ change_set .stack .set_stack_status (new_stack_status )
293
+ change_set .set_execution_status (ExecutionStatus .EXECUTE_FAILED )
283
294
284
295
start_worker_thread (_run )
285
296
0 commit comments