Append a port to address if it does not exist

This commit is contained in:
Milos Gajdos 2019-10-03 16:16:25 +01:00
parent b1163b9dee
commit b8815dff14
2 changed files with 13 additions and 5 deletions

View File

@ -107,9 +107,9 @@ func configure(c *consulRegistry, opts ...registry.Option) {
if ae, ok := err.(*net.AddrError); ok && ae.Err == "missing port in address" {
port = "8500"
addr = address
addrs = append(addrs, fmt.Sprintf("%s:%s", addr, port))
addrs = append(addrs, net.JoinHostPort(addr, port))
} else if err == nil {
addrs = append(addrs, fmt.Sprintf("%s:%s", addr, port))
addrs = append(addrs, net.JoinHostPort(addr, port))
}
}

View File

@ -6,6 +6,7 @@ import (
"crypto/tls"
"encoding/json"
"errors"
"net"
"path"
"strings"
"sync"
@ -74,11 +75,18 @@ func configure(e *etcdRegistry, opts ...registry.Option) error {
var cAddrs []string
for _, addr := range e.options.Addrs {
if len(addr) == 0 {
for _, address := range e.options.Addrs {
if len(address) == 0 {
continue
}
cAddrs = append(cAddrs, addr)
addr, port, err := net.SplitHostPort(address)
if ae, ok := err.(*net.AddrError); ok && ae.Err == "missing port in address" {
port = "2379"
addr = address
cAddrs = append(cAddrs, net.JoinHostPort(addr, port))
} else if err == nil {
cAddrs = append(cAddrs, net.JoinHostPort(addr, port))
}
}
// if we got addrs then we'll update