1
0
Fork 0

Check if join allowed before determining addresses

master
Philip O'Toole 8 years ago
parent b1ddec679d
commit 159da1b5e5

@ -193,10 +193,20 @@ func main() {
log.Fatalf("failed to parse Raft open timeout %s: %s", raftOpenTimeout, err.Error())
}
// Determine join addresses.
joins, err := determineJoinAddresses()
// Determine join addresses, if necessary.
ja, err := store.JoinAllowed(dataPath)
if err != nil {
log.Fatalf("unable to determine join addresses: %s", err.Error())
log.Fatalf("unable to determine if join permitted: %s", err.Error())
}
var joins []string
if ja {
joins, err = determineJoinAddresses()
if err != nil {
log.Fatalf("unable to determine join addresses: %s", err.Error())
}
} else {
log.Println("node is already member of cluster, skipping determining join addresses")
}
// Now, open it.
@ -214,19 +224,16 @@ func main() {
// Execute any requested join operation.
if len(joins) > 0 {
log.Println("join addresses are:", joins)
if str.JoinRequired() {
advAddr := raftAddr
if raftAdv != "" {
advAddr = raftAdv
}
if j, err := cluster.Join(joins, advAddr, noVerify); err != nil {
log.Fatalf("failed to join cluster at %s: %s", joins, err.Error())
} else {
log.Println("successfully joined cluster at", j)
}
advAddr := raftAddr
if raftAdv != "" {
advAddr = raftAdv
}
if j, err := cluster.Join(joins, advAddr, noVerify); err != nil {
log.Fatalf("failed to join cluster at %s: %s", joins, err.Error())
} else {
log.Println("node is already member of cluster, ignoring any join requests")
log.Println("successfully joined cluster at", j)
}
} else {
log.Println("no join addresses available")
}

Loading…
Cancel
Save