6 "github.com/iotbzh/xds-agent/lib/xaapiv1"
7 "github.com/urfave/cli"
10 func initCmdMisc(cmdDef *[]cli.Command) {
11 *cmdDef = append(*cmdDef, cli.Command{
14 Usage: "miscellaneous commands group",
15 Subcommands: []cli.Command{
18 Aliases: []string{"v"},
19 Usage: "Get version of XDS agent and XDS server",
24 Usage: "display verbose output",
32 func xdsVersion(ctx *cli.Context) error {
33 verbose := ctx.Bool("verbose")
36 ver := xaapiv1.XDSVersion{}
37 if err := XdsVersionGet(&ver); err != nil {
38 return cli.NewExitError(err.Error(), 1)
41 writer := NewTableWriter()
42 fmt.Fprintln(writer, "Agent:")
43 fmt.Fprintln(writer, " ID:\t", ver.Client.ID)
44 v := ver.Client.Version
46 v += " (" + ver.Client.VersionGitTag + ")"
48 fmt.Fprintln(writer, " Version:\t", v)
50 fmt.Fprintln(writer, " API Version:\t", ver.Client.APIVersion)
53 for _, svr := range ver.Server {
54 fmt.Fprintln(writer, "Server:")
55 fmt.Fprintln(writer, " ID:\t", svr.ID)
58 v += " (" + svr.VersionGitTag + ")"
60 fmt.Fprintln(writer, " Version:\t", v)
62 fmt.Fprintln(writer, " API Version:\t", svr.APIVersion)