func getNodeInfo(hosts []entity.Host) (consul string, dns []dcosentity.Server, swarm string) { if hosts == nil || len(hosts) <= 0 { logrus.Warnf("no node for current cluster!") return } dns = []dcosentity.Server{} for i := 0; i < len(hosts); i++ { host := hosts[i] if host.IsConsul { consul = host.HostName } if host.IsSwarmMaster { swarm = host.HostName } if host.IsDnsServer { server := dcosentity.Server{} server.Hostname = host.HostName server.IpAddress = host.IP server.PrivateIpAddress = host.PrivateIp server.IsMaster = host.IsMasterNode server.IsSlave = host.IsSlaveNode server.IsSwarmMaster = host.IsSwarmMaster server.IsConsul = host.IsConsul server.IsFullfilled = host.IsFullfilled server.IsDnsServer = host.IsDnsServer server.StoragePath = host.StoragePath dns = append(dns, server) } } return }