From cd71257cfd03e08df671040d7e60a937b8f8e073 Mon Sep 17 00:00:00 2001 From: Yong Tang Date: Thu, 3 Nov 2016 11:23:58 -0700 Subject: [PATCH] Add information for `Manager Addresses` in the output of `docker info` As is specified in 28018, it would be useful to know the manager's addresses even in a worker node. This is especially useful when there are many worker nodes in a big cluster. The information is available in `info.Swarm.RemoteManagers`. This fix add the information of `Manager Addresses` to the output of `docker info`, to explicitly show it. A test has been added for this fix. This fix fixes 28018. Signed-off-by: Yong Tang --- command/system/info.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/command/system/info.go b/command/system/info.go index 36b09a9cc5..b751bbff13 100644 --- a/command/system/info.go +++ b/command/system/info.go @@ -2,6 +2,7 @@ package system import ( "fmt" + "sort" "strings" "time" @@ -131,6 +132,17 @@ func prettyPrintInfo(dockerCli *command.DockerCli, info types.Info) error { } } fmt.Fprintf(dockerCli.Out(), " Node Address: %s\n", info.Swarm.NodeAddr) + managers := []string{} + for _, entry := range info.Swarm.RemoteManagers { + managers = append(managers, entry.Addr) + } + if len(managers) > 0 { + sort.Strings(managers) + fmt.Fprintf(dockerCli.Out(), " Manager Addresses:\n") + for _, entry := range managers { + fmt.Fprintf(dockerCli.Out(), " %s\n", entry) + } + } } if len(info.Runtimes) > 0 {