Jean-Baptiste Barth
7f2cbb79b0
Refactor SWF workflow execution to ease next timeout change
2015-11-19 11:45:27 +01:00
Jean-Baptiste Barth
6027bf15c1
Move some timeout conditionals to concerned models
2015-11-19 11:45:27 +01:00
Jean-Baptiste Barth
d007dfe3ff
Remove process_timeouts() method in favor of timeout(<Timeout>) and a helper for tests
2015-11-19 11:45:27 +01:00
Jean-Baptiste Barth
65c35bfa69
Make timeout events appear at the right time in workflow history
2015-11-19 11:45:27 +01:00
Jean-Baptiste Barth
d618585790
Refactor timeouts processing so it will be easier to compute them in order
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
9c3996ff58
Add WorkflowExecution.open to clarify code in some places
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
f38d23e483
Implement start to close timeout on SWF workflow executions
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
86973f2b87
Implement start to close timeout on SWF decision tasks
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
b386495520
Use list comprehensions instead of filter() for easier moto/swf python 3.x compatibility
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
2cd3d5fb45
Fix python 3.x compatibility regarding iterations on a dict
...
Error on travis-ci was:
AttributeError: 'dict' object has no attribute 'iteritems'
And actually it's been removed in python 3.x in favor of dict.items()
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
e9732140e5
Fix python 2.6 compatibility for moto/swf
2015-11-19 11:45:26 +01:00
Jean-Baptiste Barth
90c8797abd
Implement heartbeat timeout on SWF activity tasks
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
f576f3765c
Add SWF endpoint RecordActivityTaskHeartbeat
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
96d6bb056b
Add SWF endpoint TerminateWorkflowExecution
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
98948a01c8
Add missing attributes in DescribeWorkflowExecution responses
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
fd12e317f8
Add SWF endpoint RespondActivityTaskFailed
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
c9e8ad03f8
Add SWF endpoint RespondActivityTaskCompleted
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
761ab816f9
Add SWF endpoint PollForActivityTask
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
d650f71d9c
Simplify decision task handling in SWF backend
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
be71909a8c
Rework task lists for activity/decision tasks
2015-11-19 11:45:25 +01:00
Jean-Baptiste Barth
a713005882
Simplify implementation of ScheduleActivityTask decision
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
5e086223c2
Implement ScheduleActivityTask decision
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
53630dc061
Add a Domain to WorkflowExecution objects
...
This will be needed later for finding an activity type for instance.
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
49e44c8ee6
Fix openDecisionTasks counter not updated when we complete a DecisionTask
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
918cf8a4e3
Fix decision parameters: attributes are in foo*Decision*Attributes
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
417f732b53
Implement FailWorkflowExecution decision
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
6810973b76
Update obsolete comment about SWF decisions completion
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
558b84fb6a
Add checks for *DecisionAttributes within RespondDecisionTaskCompleted
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
0749b30fb4
Add some basic checks on SWF decisions, more to come later
2015-11-19 11:45:24 +01:00
Jean-Baptiste Barth
381eb5eb0f
Implement CompleteWorkflowExecution decision
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
d97c770849
Add first version of SWF endpoint RespondDecisionTaskCompleted
...
There's just the structure for now, for now the workflow execution
doesn't know how to handle any decision type.
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
c72c198208
Fix WorkflowExecution event ids not increasing
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
1ccadb169f
Simplify WorkflowExecution model since it always has a task list
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
aa4adbb76e
Implement reverseOrder option for GetWorkflowExecutionHistory and PollForDecisionTask
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
c16da9da2d
Add SWF endpoint PollForDecisionTask and associated DecisionTask model
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
464aef293c
Add SWF endpoint GetWorkflowExecutionHistory and associated HistoryEvent model
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
3ce5b29356
Handle WorkflowExecution/WorkflowType options inheritance
...
... and potential resulting DefaultUndefinedFault errors.
2015-11-19 11:45:23 +01:00
Jean-Baptiste Barth
1026fb819f
Split SWF models into their own file
...
Given the docs[1] we will implement a hundred models or so if we want to
have a full implementation of the SWF API, so better not have a 3k lines
long models.py file, too hard to manipulate.
[1] http://docs.aws.amazon.com/amazonswf/latest/apireference/API_DecisionTask.html
2015-11-19 11:45:22 +01:00