Compare commits

...

2 Commits

Author SHA1 Message Date
eaac8c8800 add state transitions for process restart
Some checks failed
Lint / golangci-lint (push) Failing after 10m0s
Declarative Tests / test (push) Failing after 21s
2025-08-24 23:54:04 +00:00
9164150c06 clean up command schema format 2025-08-24 23:53:24 +00:00
2 changed files with 24 additions and 4 deletions

View File

@ -65,6 +65,11 @@ func ResourceMachine(sub machine.Subscriber) machine.Stater {
return nil
}
stater.AddTransition("read-failed", machine.States("start_read"), "inconsistent")
if e := stater.AddSubscription("read-failed", sub); e != nil {
return nil
}
stater.AddTransition("update-failed", machine.States("start_update"), "inconsistent")
if e := stater.AddSubscription("update-failed", sub); e != nil {
return nil
@ -147,5 +152,20 @@ func ProcessMachine(sub machine.Subscriber) machine.Stater {
if e := stater.AddSubscription("deleted", sub); e != nil {
return nil
}
stater.AddTransition("restart", machine.States("*"), "restarting")
if e := stater.AddSubscription("restart", sub); e != nil {
return nil
}
stater.AddTransition("restarted", machine.States("restarting"), "running")
if e := stater.AddSubscription("restarted", sub); e != nil {
return nil
}
stater.AddTransition("restart-failed", machine.States("restarting"), "inconsistent")
if e := stater.AddSubscription("restart-failed", sub); e != nil {
return nil
}
return stater
}

View File

@ -6,23 +6,23 @@
"properties": {
"path": {
"type": "string",
"description": "command path",
"description": "command path",
"minLength": 1
},
"args": {
"type": "array",
"description": "list of command args",
"description": "list of command args",
"items": {
"type": "string"
}
},
"split": {
"type": "boolean",
"description": "split command line args by space"
"description": "split command line args by space"
},
"failonerror": {
"type": "boolean",
"description": "Generate an error if the command fails",
"description": "Generate an error if the command fails",
"items": {
"type": "string"
}