mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
etcdctl: prepare for health endpoint change
We made a mistake on the health endpoint by returning a string "true". We have to make the etcdctl works for the next version of etcd which will correct the mistake on the server side. It is too late to change the server side right now since we already released a version of etcdctl that only understands "true".
This commit is contained in:
parent
243fe519a9
commit
04539c6240
@ -3,6 +3,7 @@ package command
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"os"
|
||||
"os/signal"
|
||||
@ -70,9 +71,18 @@ func handleClusterHealth(c *cli.Context) {
|
||||
}
|
||||
|
||||
result := struct{ Health string }{}
|
||||
d := json.NewDecoder(resp.Body)
|
||||
err = d.Decode(&result)
|
||||
nresult := struct{ Health bool }{}
|
||||
bytes, err := ioutil.ReadAll(resp.Body)
|
||||
if err != nil {
|
||||
fmt.Printf("failed to check the health of member %s on %s: %v\n", m.ID, url, err)
|
||||
continue
|
||||
}
|
||||
resp.Body.Close()
|
||||
|
||||
err = json.Unmarshal(bytes, &result)
|
||||
if err != nil {
|
||||
err = json.Unmarshal(bytes, &nresult)
|
||||
}
|
||||
if err != nil {
|
||||
fmt.Printf("failed to check the health of member %s on %s: %v\n", m.ID, url, err)
|
||||
continue
|
||||
|
Loading…
x
Reference in New Issue
Block a user