github.com/kardianos/nomad@v0.1.3-0.20151022182107-b13df73ee850/api/status.go (about) 1 package api 2 3 // Status is used to query the status-related endpoints. 4 type Status struct { 5 client *Client 6 } 7 8 // Status returns a handle on the status endpoints. 9 func (c *Client) Status() *Status { 10 return &Status{client: c} 11 } 12 13 // Leader is used to query for the current cluster leader. 14 func (s *Status) Leader() (string, error) { 15 var resp string 16 _, err := s.client.query("/v1/status/leader", &resp, nil) 17 if err != nil { 18 return "", err 19 } 20 return resp, nil 21 } 22 23 // Peers is used to query the addresses of the server peers 24 // in the cluster. 25 func (s *Status) Peers() ([]string, error) { 26 var resp []string 27 _, err := s.client.query("/v1/status/peers", &resp, nil) 28 if err != nil { 29 return nil, err 30 } 31 return resp, nil 32 }