wwctl overlay args and completions

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
This commit is contained in:
Jonathon Anderson
2025-02-09 08:39:09 -07:00
parent 08a8eb430c
commit eff5565886
15 changed files with 82 additions and 89 deletions

View File

@@ -2,7 +2,7 @@ package chown
import (
"github.com/spf13/cobra"
"github.com/warewulf/warewulf/internal/pkg/overlay"
"github.com/warewulf/warewulf/internal/app/wwctl/completions"
)
var (
@@ -14,16 +14,11 @@ var (
RunE: CobraRunE,
Args: cobra.RangeArgs(3, 4),
ValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 {
list := overlay.FindOverlays()
return list, cobra.ShellCompDirectiveNoFileComp
} else if len(args) == 1 {
ret, err := overlay.OverlayGetFiles(args[0])
if err == nil {
return ret, cobra.ShellCompDirectiveNoFileComp
}
if len(args) < 2 {
return completions.OverlayAndFiles(cmd, args, toComplete)
} else {
return completions.None(cmd, args, toComplete)
}
return []string{""}, cobra.ShellCompDirectiveNoFileComp
},
}
)