node/profile list syntax doesn't support comma-separated values

Signed-off-by: jason yang <jasonyangshadow@gmail.com>
This commit is contained in:
jason yang
2023-04-06 04:35:46 +00:00
parent ab52e389f6
commit 59390b4dda
4 changed files with 119 additions and 4 deletions

View File

@@ -12,6 +12,9 @@ import (
func CobraRunE(vars *variables) func(cmd *cobra.Command, args []string) (err error) {
return func(cmd *cobra.Command, args []string) (err error) {
if len(args) > 0 && strings.Contains(args[0], ",") {
args = strings.FieldsFunc(args[0], func(r rune) bool { return r == ',' })
}
req := wwapiv1.GetProfileList{
ShowAll: vars.showAll,
Profiles: args,

View File

@@ -32,6 +32,53 @@ nodes:
n01:
profiles:
- default
`,
},
{
name: "profile list returns multiple profiles",
args: []string{"default,test"},
stdout: `PROFILE NAME COMMENT/DESCRIPTION
default --
test --`,
inDb: `WW_INTERNAL: 43
nodeprofiles:
default: {}
test: {}
nodes:
n01:
profiles:
- default
`,
},
{
name: "profile list returns one profiles",
args: []string{"test,"},
stdout: `PROFILE NAME COMMENT/DESCRIPTION
test --`,
inDb: `WW_INTERNAL: 43
nodeprofiles:
default: {}
test: {}
nodes:
n01:
profiles:
- default
`,
},
{
name: "profile list returns all profiles",
args: []string{","},
stdout: `PROFILE NAME COMMENT/DESCRIPTION
default --
test --`,
inDb: `WW_INTERNAL: 43
nodeprofiles:
default: {}
test: {}
nodes:
n01:
profiles:
- default
`,
},
}