Skip to content

Commit 53e932c

Browse files
tsurdiloTihomir Surdilovic
andauthored
Update to workflow Timeouts (#399)
* Update to workflow Timeouts Signed-off-by: Tihomir Surdilovic <[email protected]> * further formatting fixes Signed-off-by: Tihomir Surdilovic <[email protected]> * externalized top-level timeouts in reusable schema def Signed-off-by: Tihomir Surdilovic <[email protected]> Co-authored-by: Tihomir Surdilovic <[email protected]>
1 parent 3b446aa commit 53e932c

File tree

7 files changed

+1046
-656
lines changed

7 files changed

+1046
-656
lines changed

comparisons/comparison-bpmn.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,25 @@
11
# Comparisons - BPMN2
22

33
The [Business Process Model and Notation (BPMN)](https://www.omg.org/spec/BPMN/2.0/PDF) defines a flowchart-based
4-
DSL for workflows. It is maintained by the [Object Management Group (OMG)](https://www.omg.org/).
4+
DSL for workflows. It is maintained by the [Object Management Group (OMG)](https://www.omg.org/).
55
The latest BPMN version is [2.0.2](https://www.omg.org/spec/BPMN/2.0.2/), published in 2014.
66

77
BPMN2 defines a graphical notation to specify workflows. This notation can then be shared between tooling and organizations.
88
The graphical notation is translated into XML, which then can be used for runtime execution.
99

1010
For this comparison, we will compare the Serverless Workflow language with the graphical representation of BPMN2,
11-
and not its underlying XML representation. The BPMN2 XML is very difficult to understand, quite large for even the smallest workflows, and often not portable between runtimes.
11+
and not its underlying XML representation. The BPMN2 XML is very difficult to understand, quite large for even the smallest workflows, and often not portable between runtimes.
1212
It makes more sense to use its portable graphical notation for comparisons.
1313

14-
Serverless Workflow is a declarative workflow language, represented with JSON or YAML. It currently does not define a graphical notation. However, it can be graphically represented using different flowcharting techniques such as
15-
UML activity diagrams. The [Serverless Workflow Java SDK](https://github.com/serverlessworkflow/sdk-java#building-workflow-diagram) as well as its [VSCode Extension](https://github.com/serverlessworkflow/vscode-extension) provide means to generate SVG diagrams based on the workflow JSON/YAML.
14+
Serverless Workflow is a declarative workflow language, represented with JSON or YAML. It currently does not define a graphical notation. However, it can be graphically represented using different flowcharting techniques such as
15+
UML activity diagrams. The [Serverless Workflow Java SDK](https://github.com/serverlessworkflow/sdk-java#building-workflow-diagram) as well as its [VSCode Extension](https://github.com/serverlessworkflow/vscode-extension) provide means to generate SVG diagrams based on the workflow JSON/YAML.
1616

1717
## Note when reading provided examples
1818

19-
The BPMN2 graphical notation does not provide details about data inputs/outputs, mapping, and transformation.
19+
The BPMN2 graphical notation does not provide details about data inputs/outputs, mapping, and transformation.
2020
BPMN2 does provide graphical representation for things such as Data Objects. However, most of the examples
2121
available do not use them. Execution semantics such as task and event properties are also not visual.
22-
For this reason, the event, function, retry, and data mapping defined in the associated Serverless Workflow YAML are assumed.
23-
22+
For this reason, the event, function, retry, and data mapping defined in the associated Serverless Workflow YAML are assumed.
2423

2524
## Table of Contents
2625

@@ -264,10 +263,11 @@ name: Execution Timeout Workflow
264263
version: '1.0'
265264
specVersion: '0.7'
266265
start: Purchase Parts
267-
execTimeout:
268-
duration: PT7D
269-
interrupt: true
270-
runBefore: Handle timeout
266+
timeouts:
267+
workflowExecTimeout:
268+
duration: PT7D
269+
interrupt: true
270+
runBefore: Handle timeout
271271
states:
272272
- name: Purchase Parts
273273
type: operation
@@ -382,7 +382,7 @@ states:
382382

383383
This workflow assumes that the input to the workflow includes a maxChecks attribute set to an integer value.
384384

385-
* Note: We did not include the `checkAndReplyToEmail` workflow in this example, which would include the
385+
* Note: We did not include the `checkAndReplyToEmail` workflow in this example, which would include the
386386
control-flow logic to check email and make a decision to reply to it or wait an hour.
387387

388388
### Approve Report

0 commit comments

Comments
 (0)