Add scheduler and timeout to processes

The scheduler allows to define when a process should run. It can be either
a timestamp in RFC3339 format or a crontab expression. If a scheduler is
given, reconnect and the reconnect delay will only apply to processes that
exited as failed.

The timeout allows to define when a process should be gracefully stopped.
It is measured from the actual start of that process including all reconnects
due to failures. If the process finished regularly, the timeout will be
reset.
This commit is contained in:
Ingo Oppermann
2023-03-21 14:51:43 +01:00
parent 674c444d17
commit b63b23527b
24 changed files with 1531 additions and 34 deletions

View File

@@ -3371,10 +3371,17 @@ const docTemplate = `{
"reference": {
"type": "string"
},
"scheduler": {
"type": "string"
},
"stale_timeout_seconds": {
"type": "integer",
"format": "uint64"
},
"timeout_seconds": {
"type": "integer",
"format": "uint64"
},
"type": {
"type": "string",
"enum": [