Wire action-group variables, sudo, and command path resolution through the API and UI.

Completes run-if/set_variable and requires_sudo editing, sudoers path resolve helpers, and execute permission checks so node action groups can gate upgrades and elevate safely.
This commit is contained in:
2026-07-19 22:00:14 +02:00
parent 0e06063c1d
commit 7631591f30
22 changed files with 2685 additions and 274 deletions
+14 -13
View File
@@ -22,19 +22,20 @@ type upsertGroupRequest struct {
}
var allowedPermissions = map[string]struct{}{
"nodes.read": {},
"nodes.exec": {},
"nodes.update": {},
"nodes.delete": {},
"jobs.read": {},
"jobs.run": {},
"actions.create": {},
"actions.update": {},
"actions.delete": {},
"users.manage": {},
"secrets.manage": {},
"roles.manage": {},
"logs.read": {},
"nodes.read": {},
"nodes.exec": {},
"nodes.update": {},
"nodes.delete": {},
"jobs.read": {},
"jobs.run": {},
"actions.create": {},
"actions.update": {},
"actions.delete": {},
"actions.execute": {},
"users.manage": {},
"secrets.manage": {},
"roles.manage": {},
"logs.read": {},
}
func groupsGetHandler(configDir string) http.HandlerFunc {