Skip to content

Commit 01ad926

Browse files
authored
Merge pull request #92 from tsurdilo/up073
updating 0.7 schemas (adding timeouts)
2 parents e8463f2 + c912217 commit 01ad926

File tree

3 files changed

+248
-55
lines changed

3 files changed

+248
-55
lines changed

schemas/0.7/retries.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,4 +82,4 @@
8282
]
8383
}
8484
}
85-
}
85+
}

schemas/0.7/timeouts.json

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
{
2+
"$id": "https://serverlessworkflow.io/schemas/0.7/timeouts.json",
3+
"$schema": "http://json-schema.org/draft-07/schema#",
4+
"description": "Serverless Workflow specification - functions schema",
5+
"type": "object",
6+
"timeouts": {
7+
"oneOf": [
8+
{
9+
"type": "string",
10+
"format": "uri",
11+
"description": "URI to a resource containing timeouts definitions (json or yaml)"
12+
},
13+
{
14+
"type": "object",
15+
"description": "Workflow default timeouts",
16+
"properties": {
17+
"workflowExecTimeout": {
18+
"$ref": "#/definitions/workflowExecTimeout"
19+
},
20+
"stateExecTimeout": {
21+
"$ref": "#/definitions/stateExecTimeout"
22+
},
23+
"actionExecTimeout": {
24+
"$ref": "#/definitions/actionExecTimeout"
25+
},
26+
"branchExecTimeout": {
27+
"$ref": "#/definitions/branchExecTimeout"
28+
},
29+
"eventTimeout": {
30+
"$ref": "#/definitions/eventTimeout"
31+
}
32+
},
33+
"additionalProperties": false,
34+
"required": []
35+
}
36+
]
37+
},
38+
"required": [
39+
"timeouts"
40+
],
41+
"definitions": {
42+
"workflowExecTimeout": {
43+
"oneOf": [
44+
{
45+
"type": "string",
46+
"description": "Workflow execution timeout duration (ISO 8601 duration format). If not specified should be 'unlimited'",
47+
"minLength": 1
48+
},
49+
{
50+
"type": "object",
51+
"properties": {
52+
"duration": {
53+
"type": "string",
54+
"description": "Workflow execution timeout duration (ISO 8601 duration format). If not specified should be 'unlimited'",
55+
"minLength": 1
56+
},
57+
"interrupt": {
58+
"type": "boolean",
59+
"description": "If `false`, workflow instance is allowed to finish current execution. If `true`, current workflow execution is abrupted.",
60+
"default": true
61+
},
62+
"runBefore": {
63+
"type": "string",
64+
"description": "Name of a workflow state to be executed before workflow instance is terminated",
65+
"minLength": 1
66+
}
67+
},
68+
"additionalProperties": false,
69+
"required": [
70+
"duration"
71+
]
72+
}
73+
]
74+
},
75+
"stateExecTimeout": {
76+
"type": "string",
77+
"description": "State execution timeout duration (ISO 8601 duration format)",
78+
"minLength": 1
79+
},
80+
"actionExecTimeout": {
81+
"type": "string",
82+
"description": "Single actions definition execution timeout duration (ISO 8601 duration format)",
83+
"minLength": 1
84+
},
85+
"branchExecTimeout": {
86+
"type": "string",
87+
"description": "Single branch execution timeout duration (ISO 8601 duration format)",
88+
"minLength": 1
89+
},
90+
"eventTimeout": {
91+
"type": "string",
92+
"description": "Timeout duration to wait for consuming defined events (ISO 8601 duration format)",
93+
"minLength": 1
94+
}
95+
}
96+
}

0 commit comments

Comments
 (0)