etcdctl/command: print more details about ErrNoEndpoint

This commit prints more details if getting ErrNoEndpoint when sync with
cluster. This helps users to know what happens.
This commit is contained in:
Yicheng Qin 2015-08-31 15:57:12 -07:00
parent 57b39aca4e
commit c2caa4ae3b

View File

@ -221,6 +221,10 @@ func mustNewClient(c *cli.Context) client.Client {
err := hc.Sync(ctx)
cancel()
if err != nil {
if err == client.ErrNoEndpoints {
fmt.Fprintf(os.Stderr, "etcd cluster has no published client endpoints.\n")
fmt.Fprintf(os.Stderr, "Try '--no-sync' if you want to access non-published client endpoints(%s).\n", strings.Join(eps, ","))
}
handleError(ExitServerError, err)
os.Exit(1)
}