github.com/portworx/docker@v1.12.1/api/client/stack/cmd.go (about) 1 // +build experimental 2 3 package stack 4 5 import ( 6 "fmt" 7 8 "github.com/docker/docker/api/client" 9 "github.com/docker/docker/cli" 10 "github.com/spf13/cobra" 11 ) 12 13 // NewStackCommand returns a cobra command for `stack` subcommands 14 func NewStackCommand(dockerCli *client.DockerCli) *cobra.Command { 15 cmd := &cobra.Command{ 16 Use: "stack", 17 Short: "Manage Docker stacks", 18 Args: cli.NoArgs, 19 Run: func(cmd *cobra.Command, args []string) { 20 fmt.Fprintf(dockerCli.Err(), "\n"+cmd.UsageString()) 21 }, 22 } 23 cmd.AddCommand( 24 newConfigCommand(dockerCli), 25 newDeployCommand(dockerCli), 26 newRemoveCommand(dockerCli), 27 newPSCommand(dockerCli), 28 ) 29 return cmd 30 } 31 32 // NewTopLevelDeployCommand returns a command for `docker deploy` 33 func NewTopLevelDeployCommand(dockerCli *client.DockerCli) *cobra.Command { 34 cmd := newDeployCommand(dockerCli) 35 // Remove the aliases at the top level 36 cmd.Aliases = []string{} 37 return cmd 38 }