Skip to content

Commit 12621b1

Browse files
committed
Manage start_failed
Signed-off-by: Yves Bastide <[email protected]>
1 parent 7f4b2a7 commit 12621b1

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

simpleflow/history.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -559,6 +559,16 @@ def get_lambda():
559559
'started_id': event.id,
560560
'started_timestamp': event.timestamp,
561561
})
562+
elif event.state == 'start_failed':
563+
lambda_function = get_lambda()
564+
lambda_function.update({
565+
'state': event.state,
566+
'cause': event.cause,
567+
'message': getattr(event, 'message', ''),
568+
'start_failed_id': event.id,
569+
'start_failed_timestamp': event.timestamp,
570+
'retry': lambda_function.get('retry', -1) + 1,
571+
})
562572
elif event.state == 'completed':
563573
lambda_function = get_lambda()
564574
lambda_function.update({

simpleflow/swf/executor.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -381,11 +381,19 @@ def _get_future_from_lambda_function_event(self, event):
381381
reason=event['reason'],
382382
details=event.get('details'),
383383
))
384+
elif state == 'start_failed':
385+
future.set_exception(exceptions.TaskFailed(
386+
name=event['id'],
387+
reason=event['cause'],
388+
details=event.get('message'),
389+
))
384390
elif state == 'timed_out':
385391
future.set_exception(exceptions.TimeoutError(
386392
event['timeout_type'],
387393
None,
388394
))
395+
else:
396+
logger.warning('Unknown state: %s', state)
389397

390398
return future
391399

0 commit comments

Comments
 (0)