get.porter.sh/porter@v1.3.0/cmd/porter/version.go (about) 1 package main 2 3 import ( 4 "get.porter.sh/porter/pkg/porter" 5 "get.porter.sh/porter/pkg/porter/version" 6 "github.com/spf13/cobra" 7 ) 8 9 func buildVersionCommand(p *porter.Porter) *cobra.Command { 10 opts := porter.VersionOpts{} 11 cmd := &cobra.Command{ 12 Use: "version", 13 Short: "Print the application version", 14 PreRunE: func(cmd *cobra.Command, args []string) error { 15 return opts.Validate() 16 }, 17 RunE: func(cmd *cobra.Command, args []string) error { 18 return p.PrintVersion(cmd.Context(), opts) 19 }, 20 } 21 cmd.Annotations = map[string]string{ 22 "group": "meta", 23 skipConfig: "", 24 } 25 26 f := cmd.Flags() 27 f.StringVarP(&opts.RawFormat, "output", "o", string(version.DefaultVersionFormat), 28 "Specify an output format. Allowed values: json, plaintext") 29 f.BoolVarP(&opts.System, "system", "s", false, "Print system debug information") 30 31 return cmd 32 }