github.com/kim0/docker@v0.6.2-0.20161130212042-4addda3f07e7/cli/command/stack/config.go (about) 1 package stack 2 3 import ( 4 "github.com/docker/docker/cli" 5 "github.com/docker/docker/cli/command" 6 "github.com/docker/docker/cli/command/bundlefile" 7 "github.com/spf13/cobra" 8 ) 9 10 type configOptions struct { 11 bundlefile string 12 namespace string 13 } 14 15 func newConfigCommand(dockerCli *command.DockerCli) *cobra.Command { 16 var opts configOptions 17 18 cmd := &cobra.Command{ 19 Use: "config [OPTIONS] STACK", 20 Short: "Print the stack configuration", 21 Args: cli.ExactArgs(1), 22 RunE: func(cmd *cobra.Command, args []string) error { 23 opts.namespace = args[0] 24 return runConfig(dockerCli, opts) 25 }, 26 } 27 28 flags := cmd.Flags() 29 addBundlefileFlag(&opts.bundlefile, flags) 30 return cmd 31 } 32 33 func runConfig(dockerCli *command.DockerCli, opts configOptions) error { 34 bundle, err := loadBundlefile(dockerCli.Err(), opts.namespace, opts.bundlefile) 35 if err != nil { 36 return err 37 } 38 return bundlefile.Print(dockerCli.Out(), bundle) 39 }