|
14 | 14 | + [gRPC](#grpc-call)
|
15 | 15 | + [HTTP](#http-call)
|
16 | 16 | + [OpenAPI](#openapi-call)
|
17 |
| - - [Composite](#composite) |
| 17 | + - [Do](#do) |
| 18 | + - [Fork](#fork) |
18 | 19 | - [Emit](#emit)
|
19 | 20 | - [For](#for)
|
20 | 21 | - [Listen](#listen)
|
@@ -225,7 +226,8 @@ By breaking down the [workflow](#workflow) into manageable [tasks](#task), organ
|
225 | 226 | The Serverless Workflow DSL defines a list of [tasks](#task) that **must be** supported by all runtimes:
|
226 | 227 |
|
227 | 228 | - [Call](#call), used to call services and/or functions.
|
228 |
| -- [Composite](#composite), used to define a minimum of two subtasks to perform. |
| 229 | +- [Do](#do), used to define a minimum of two subtasks to perform in sequence. |
| 230 | +- [Fork](#fork), used to define a minimum of two subtasks to perform concurrently. |
229 | 231 | - [Emit](#emit), used to emit [events](#event).
|
230 | 232 | - [For](#for), used to iterate over a collection of items, and conditionally perform a task for each of them.
|
231 | 233 | - [Listen](#listen), used to listen for an [event](#event) or more.
|
@@ -417,21 +419,18 @@ do:
|
417 | 419 | status: available
|
418 | 420 | ```
|
419 | 421 |
|
420 |
| -#### Composite |
| 422 | +#### Do |
421 | 423 |
|
422 |
| - Serves as a pivotal orchestrator within workflow systems, enabling the seamless integration and execution of multiple subtasks to accomplish complex operations. By encapsulating and coordinating various subtasks, this task type facilitates the efficient execution of intricate workflows. |
| 424 | +Serves as a fundamental building block within workflows, enabling the sequential execution of multiple subtasks. By defining a series of subtasks to perform in sequence, the Do task facilitates the efficient execution of complex operations, ensuring that each subtask is completed before the next one begins. |
423 | 425 |
|
424 | 426 | ##### Properties
|
425 | 427 |
|
426 | 428 | | Name | Type | Required | Description|
|
427 | 429 | |:--|:---:|:---:|:---|
|
428 |
| -| do | [`map[string, task][]`](#task) | `no` | The tasks to perform sequentially.<br>*Required if `fork` has not been set, otherwise ignored.*<br>*If set, must contains **at least** two [`tasks`](#task).* | |
429 |
| -| fork.branches | [`map[string, task][]`](#task) | `no` | The tasks to perform concurrently.<br>*Required if `do` has not been set, otherwise ignored.*<br>*If set, must contains **at least** two [`tasks`](#task).* | |
430 |
| -| fork.compete | `boolean` | `no` | Indicates whether or not the concurrent [`tasks`](#task) are racing against each other, with a single possible winner, which sets the composite task's output.<br>*Ignored if `do` has been set. Defaults to `false`.*<br>*Must **not** be set if the [`tasks`](#task) are executed sequentially.* | |
| 430 | +| do | [`map[string, task][]`](#task) | `no` | The tasks to perform sequentially.<br>*If set, must contains **at least** two [`tasks`](#task).* | |
431 | 431 |
|
432 | 432 | ##### Examples
|
433 | 433 |
|
434 |
| -*Executing tasks sequentially:* |
435 | 434 | ```yaml
|
436 | 435 | document:
|
437 | 436 | dsl: '1.0.0-alpha1'
|
|
474 | 473 | country: Portugal
|
475 | 474 | ```
|
476 | 475 |
|
477 |
| -*Executing tasks concurrently:* |
| 476 | +#### Fork |
| 477 | + |
| 478 | +Allows workflows to execute multiple subtasks concurrently, enabling parallel processing and improving the overall efficiency of the workflow. By defining a set of subtasks to perform concurrently, the Fork task facilitates the execution of complex operations in parallel, ensuring that multiple tasks can be executed simultaneously. |
| 479 | + |
| 480 | +##### Properties |
| 481 | + |
| 482 | +| Name | Type | Required | Description| |
| 483 | +|:--|:---:|:---:|:---| |
| 484 | +| fork.branches | [`map[string, task][]`](#task) | `no` | The tasks to perform concurrently.<br>*If set, must contains **at least** two [`tasks`](#task).* | |
| 485 | +| fork.compete | `boolean` | `no` | Indicates whether or not the concurrent [`tasks`](#task) are racing against each other, with a single possible winner, which sets the composite task's output. Defaults to `false`. | |
| 486 | + |
| 487 | +##### Examples |
| 488 | + |
478 | 489 | ```yaml
|
479 | 490 | document:
|
480 | 491 | dsl: '1.0.0-alpha1'
|
|
0 commit comments