mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
etcd: attach default scheme to the peer-list if scheme is not given
This commit is contained in:
parent
cc1df691cc
commit
c1c2aeffab
12
etcd/etcd.go
12
etcd/etcd.go
@ -166,7 +166,17 @@ func (s *Server) Run() error {
|
|||||||
}
|
}
|
||||||
log.Printf("id=%x server.run source=-discovery seeds=\"%v\"\n", s.id, seeds)
|
log.Printf("id=%x server.run source=-discovery seeds=\"%v\"\n", s.id, seeds)
|
||||||
} else {
|
} else {
|
||||||
seeds = s.cfg.Peers
|
for _, p := range s.cfg.Peers {
|
||||||
|
u, err := url.Parse(p)
|
||||||
|
if err != nil {
|
||||||
|
log.Printf("id=%x server.run err=%q", err)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if u.Scheme == "" {
|
||||||
|
u.Scheme = s.cfg.PeerTLSInfo().Scheme()
|
||||||
|
}
|
||||||
|
seeds = append(seeds, u.String())
|
||||||
|
}
|
||||||
log.Printf("id=%x server.run source=-peers seeds=\"%v\"\n", s.id, seeds)
|
log.Printf("id=%x server.run source=-peers seeds=\"%v\"\n", s.id, seeds)
|
||||||
}
|
}
|
||||||
s.peerHub.setSeeds(seeds)
|
s.peerHub.setSeeds(seeds)
|
||||||
|
@ -18,6 +18,7 @@ package etcd
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"math/rand"
|
"math/rand"
|
||||||
|
"net/url"
|
||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
@ -103,6 +104,31 @@ func TestJoinThroughFollower(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestJoinWithoutHTTPScheme(t *testing.T) {
|
||||||
|
bt := &testServer{}
|
||||||
|
bt.Start()
|
||||||
|
|
||||||
|
cl := testCluster{nodes: []*testServer{bt}}
|
||||||
|
seed := bt.URL
|
||||||
|
u, err := url.Parse(seed)
|
||||||
|
if err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
// remove HTTP scheme
|
||||||
|
seed = u.Host + u.Path
|
||||||
|
|
||||||
|
for i := 1; i < 3; i++ {
|
||||||
|
c := newTestConfig()
|
||||||
|
c.Peers = []string{seed}
|
||||||
|
ts := &testServer{Config: c, Id: int64(i)}
|
||||||
|
ts.Start()
|
||||||
|
ts.WaitMode(participantMode)
|
||||||
|
cl.nodes = append(cl.nodes, ts)
|
||||||
|
cl.Leader()
|
||||||
|
}
|
||||||
|
cl.Destroy()
|
||||||
|
}
|
||||||
|
|
||||||
func TestClusterConfigReload(t *testing.T) {
|
func TestClusterConfigReload(t *testing.T) {
|
||||||
defer afterTest(t)
|
defer afterTest(t)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user