// SPDX-License-Identifier: Apache-2.0 // Copyright Authors of K9s package cmd import ( "fmt" "github.com/derailed/k9s/internal/color" "github.com/spf13/cobra" ) func versionCmd() *cobra.Command { var short bool command := cobra.Command{ Use: "version", Short: "Print version/build info", Long: "Print version/build information", Run: func(cmd *cobra.Command, args []string) { printVersion(short) }, } command.PersistentFlags().BoolVarP(&short, "short", "s", false, "Prints K9s version info in short format") return &command } func printVersion(short bool) { const fmat = "%-20s %s\n" var outputColor color.Paint if short { outputColor = -1 } else { outputColor = color.Cyan printLogo(outputColor) } printTuple(fmat, "Version", version, outputColor) printTuple(fmat, "Commit", commit, outputColor) printTuple(fmat, "Date", date, outputColor) } func printTuple(fmat, section, value string, outputColor color.Paint) { if outputColor != -1 { _, _ = fmt.Fprintf(out, fmat, color.Colorize(section+":", outputColor), value) return } _, _ = fmt.Fprintf(out, fmat, section, value) }