Skip to content

Commit 859154b

Browse files
authored
Merge pull request #4778 from thaJeztah/cmd_docker_smaller_interface
cmd/docker: registerCompletionFuncForGlobalFlags: take store.Store as argument
2 parents 76e09dd + 0e37dd4 commit 859154b

2 files changed

Lines changed: 13 additions & 6 deletions

File tree

cmd/docker/completions.go

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,34 @@
11
package main
22

33
import (
4-
"github.com/docker/cli/cli/command"
54
"github.com/docker/cli/cli/context/store"
65
"github.com/spf13/cobra"
76
)
87

9-
func registerCompletionFuncForGlobalFlags(dockerCli *command.DockerCli, cmd *cobra.Command) {
10-
cmd.RegisterFlagCompletionFunc(
8+
func registerCompletionFuncForGlobalFlags(contextStore store.Store, cmd *cobra.Command) error {
9+
err := cmd.RegisterFlagCompletionFunc(
1110
"context",
1211
func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
13-
names, err := store.Names(dockerCli.ContextStore())
12+
names, err := store.Names(contextStore)
1413
if err != nil {
1514
return nil, cobra.ShellCompDirectiveError
1615
}
1716
return names, cobra.ShellCompDirectiveNoFileComp
1817
},
1918
)
20-
cmd.RegisterFlagCompletionFunc(
19+
if err != nil {
20+
return err
21+
}
22+
err = cmd.RegisterFlagCompletionFunc(
2123
"log-level",
2224
func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
2325
values := []string{"debug", "info", "warn", "error", "fatal"}
2426
return values, cobra.ShellCompDirectiveNoFileComp
2527
},
2628
)
29+
if err != nil {
30+
return err
31+
}
32+
33+
return nil
2734
}

cmd/docker/docker.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ func newDockerCommand(dockerCli *command.DockerCli) *cli.TopLevelCommand {
8484
cmd.SetErr(dockerCli.Err())
8585

8686
opts, helpCmd = cli.SetupRootCommand(cmd)
87-
registerCompletionFuncForGlobalFlags(dockerCli, cmd)
87+
_ = registerCompletionFuncForGlobalFlags(dockerCli.ContextStore(), cmd)
8888
cmd.Flags().BoolP("version", "v", false, "Print version information and quit")
8989
setFlagErrorFunc(dockerCli, cmd)
9090

0 commit comments

Comments
 (0)