/*
- * Copyright (C) 2017 "IoT.bzh"
+ * Copyright (C) 2017-2018 "IoT.bzh"
* Author Sebastien Douheret <sebastien@iot.bzh>
*
* Licensed under the Apache License, Version 2.0 (the "License");
import (
"fmt"
- "github.com/iotbzh/xds-agent/lib/xaapiv1"
+ "gerrit.automotivelinux.org/gerrit/src/xds/xds-agent.git/lib/xaapiv1"
"github.com/urfave/cli"
)
},
},
},
+ {
+ Name: "status",
+ Aliases: []string{"sts"},
+ Usage: "Get XDS configuration status (including XDS server connection)",
+ Action: xdsStatus,
+ Flags: []cli.Flag{
+ cli.BoolFlag{
+ Name: "verbose, v",
+ Usage: "display verbose output",
+ },
+ },
+ },
},
})
}
return nil
}
+
+func xdsStatus(ctx *cli.Context) error {
+ cfg := xaapiv1.APIConfig{}
+ if err := XdsConfigGet(&cfg); err != nil {
+ return cli.NewExitError(err.Error(), 1)
+ }
+
+ writer := NewTableWriter()
+ fmt.Fprintln(writer, "XDS Server:")
+ for _, svr := range cfg.Servers {
+ fmt.Fprintln(writer, " ID:\t", svr.ID)
+ fmt.Fprintln(writer, " URL:\t", svr.URL)
+ fmt.Fprintln(writer, " Connected:\t", svr.Connected)
+ fmt.Fprintln(writer, " Connection retry:\t", svr.ConnRetry)
+ fmt.Fprintln(writer, " Disabled:\t", svr.Disabled)
+ }
+ writer.Flush()
+
+ return nil
+}