diff --git a/service/internal/executor/arguments.go b/service/internal/executor/arguments.go index cc34ffa..7a8ad33 100644 --- a/service/internal/executor/arguments.go +++ b/service/internal/executor/arguments.go @@ -103,12 +103,20 @@ func redactShellCommand(shellCommand string, arguments []config.ActionArgument, } func typecheckActionArgument(name string, value string, action *config.Action) error { + if name == "" { + return fmt.Errorf("argument name cannot be empty") + } + arg := action.FindArg(name) if arg == nil { return fmt.Errorf("action arg not defined: %v", name) } + return typecheckActionArgumentFound(name, value, action, arg) +} + +func typecheckActionArgumentFound(name string, value string, action *config.Action, arg *config.ActionArgument) error { if value == "" { return typecheckNull(arg) } @@ -210,7 +218,7 @@ func typeSafetyCheckRegex(name string, value string, argumentType string) error pattern, found = typecheckRegex[argumentType] if !found { - return fmt.Errorf("argument type not implemented %v", argumentType) + return fmt.Errorf("argument type not implemented %v for arg: %v", argumentType, name) } } diff --git a/webui.dev/js/ArgumentForm.js b/webui.dev/js/ArgumentForm.js index 24494a4..9d973fc 100644 --- a/webui.dev/js/ArgumentForm.js +++ b/webui.dev/js/ArgumentForm.js @@ -44,6 +44,10 @@ class ArgumentForm extends window.HTMLElement { } } + if (arg.name === "") { + continue + } + ret.push({ name: arg.name, value: arg.value