52 Commits

Author SHA1 Message Date
Brian Waldon
5f6e536be8 Merge pull request #1639 from bcwaldon/etcdctl-tls
Wire up TLS flags for etcdctl
2014-11-07 13:19:36 -08:00
Xiang Li
66572561bf client: add error handling for addmember 2014-11-06 12:31:24 -08:00
Brian Waldon
4b555dba99 client: add SyncableHTTPClient.Endpoints 2014-11-06 10:54:56 -08:00
Jonathan Boulle
45b7c9a4ac client: return ErrNoEndpoint when none available
In certain cases (for example, if a cluster peer is accessible but it
has no members listed), the httpClusterClient could have an empty set of
endpoints as a result of the Sync. This means that its Do function could
potentially return a nil response and nil error, with catastrophic
consequences for callers.

To be safe (particularly about this latter behaviour), this change
errors in both Sync and Do if no endpoints are available.
2014-11-04 12:51:43 -08:00
Brian Waldon
6dd4944e62 client: follow redirects 2014-11-03 12:15:16 -08:00
Brian Waldon
da6827f09e client: use all endpoints 2014-10-31 20:51:47 -07:00
Brian Waldon
58af26736c client: further clarify external interfaces 2014-10-31 20:45:55 -07:00
Brian Waldon
17c6f21d68 client: elevate context to caller of KeysAPI 2014-10-31 17:27:43 -07:00
Brian Waldon
f0760d6246 client: elevate context to caller of MembersAPI 2014-10-31 17:27:42 -07:00
Brian Waldon
913d102a81 client: remove unused field 2014-10-31 17:25:05 -07:00
Brian Waldon
824049897d client: export necessary interfaces/methods 2014-10-31 17:25:05 -07:00
Brian Waldon
5ed5d018be client: add httpClusterClient.Sync 2014-10-31 17:25:05 -07:00
Brian Waldon
f6e8b677cf client: pass httpActionDo into NewMembersAPI 2014-10-31 17:25:05 -07:00
Brian Waldon
0ef270c25c client: pass httpActionDo into New[Discovery]KeysAPI 2014-10-31 17:25:05 -07:00
Brian Waldon
1130273178 client: s/newHTTPClusterClient/NewHTTPClient/ 2014-10-31 17:25:05 -07:00
Brian Waldon
3eb126af4d client: use httpActionDo in httpClusterClient 2014-10-31 17:25:05 -07:00
Brian Waldon
c282664c23 client: s/transport/CancelableTransport/
CancelableTransport is implemented by callers of the
client pkg, so we should export it so it is
documented publicly.
2014-10-31 17:25:04 -07:00
Brian Waldon
d52d836761 client: return full http.Response in httpActionDo 2014-10-31 17:25:04 -07:00
Brian Waldon
eab4692744 client: use v2MembersURL helper 2014-10-31 12:21:15 -07:00
Brian Waldon
8b8b3efdaa client: accept slice of endpoints 2014-10-31 12:21:15 -07:00
Brian Waldon
8d519ffdb8 client: introduce httpClusterClient 2014-10-31 12:21:15 -07:00
Brian Waldon
323fb1ec85 client: introduce httpActionDo interface 2014-10-31 12:21:15 -07:00
Brian Waldon
9d07db4432 client: move timeout into caller of httpClient 2014-10-31 12:21:15 -07:00
Brian Waldon
7c1f4a9baf client: explicitly carry API prefix around 2014-10-31 12:21:15 -07:00
Brian Waldon
052521eaf1 client: test assertStatusCode 2014-10-30 11:46:44 -07:00
Brian Waldon
d756dd2079 client: test membersAPIActionRemove 2014-10-29 16:42:16 -07:00
Brian Waldon
5264c05ddb client: clean up style of TestMembersAPIActionList 2014-10-29 16:42:16 -07:00
Brian Waldon
4e759b46ce client: use httptypes.MemberCreateRequest in member add 2014-10-29 16:42:14 -07:00
Brian Waldon
e457d52f5c client: log incorrect HTTP resp body as string 2014-10-29 16:37:07 -07:00
Jonathan Boulle
97c23c4333 client: pass around statuscode instead of Response
There's no real need for do and doWithTimeout to return Responses when
the only field of interest is the status code.

This also removes the superfluous httpMembersAPIResponse struct.
2014-10-29 15:47:55 -07:00
Brian Waldon
95231c1278 Merge pull request #1493 from bcwaldon/etcdctl-members
etcdctl members [list|add|remove]
2014-10-29 15:44:30 -07:00
Brian Waldon
8b12e1aa37 client: fill in MembersAPI 2014-10-29 15:03:22 -07:00
Brian Waldon
ab67fa4cc6 api: remove admin prefix from members API 2014-10-29 12:12:51 -07:00
Brian Waldon
80ca168cbe client: simplify MembersAPI response parsing 2014-10-27 11:22:47 -07:00
Brian Waldon
14795d8ed9 httptypes: use MemberCollection for JSON (de)serialization 2014-10-27 11:22:47 -07:00
Brian Waldon
54a2d8ffc9 client: move Member models to new types pkg 2014-10-27 11:22:46 -07:00
Brian Waldon
cba19e348f client: MembersAPI.List 2014-10-25 11:30:15 -07:00
Brian Waldon
00dcbf8bf7 client: unexport HTTPKeysAPI 2014-10-25 08:58:25 -07:00
Brian Waldon
73e48068c2 client: add prefix to KeysAPI 2014-10-25 08:58:25 -07:00
Brian Waldon
f21d93ba60 client: define DefaultRequestTimeout 2014-10-24 13:28:04 -07:00
Brian Waldon
45d8fbdcda client: move discovery path logic into client pkg 2014-10-24 13:28:04 -07:00
Brian Waldon
ce4df96e69 client: break apart KeysAPI from httpClient 2014-10-24 13:27:59 -07:00
Brian Waldon
992e7c76e0 client: copy v2KeysPrefix to httpClient
It's poor form to muck with a global variable. Make a copy when the
httpClient object is instantiated to make httpClient.SetPrefix safe.
2014-10-23 16:31:45 -07:00
Brian Waldon
a85a47c8f9 client: s/v2URL/v2KeysURL/ 2014-10-23 16:31:42 -07:00
Brian Waldon
ebe32689d4 client: s/v2Prefix/DefaultV2KeysPrefix/ 2014-10-23 16:30:56 -07:00
Jonathan Boulle
b3d5333cb3 *: fix various formatting issues 2014-10-20 17:55:18 -07:00
Jonathan Boulle
7a4d42166b *: add license header to all source files 2014-10-17 15:41:22 -07:00
Jonathan Boulle
4183b69e12 *: move from third_party to Godep 2014-10-14 00:37:52 -07:00
Barak Michener
ca1bbee737 add logging and backoff and simple retry logic 2014-10-07 16:58:58 -04:00
Xiang Li
9e3d045b2b *:discovery hook up 2014-10-06 10:12:42 -07:00