253 Commits

Author SHA1 Message Date
Rohit Jnagal
62ecd5f3ff Fix few vet errors.
There are quite a few 'composite literal uses unkeyed fields' errors that I have kept out of this patch.
And there's a couple where vet just seems confused. These are the easiest ones.
2015-01-07 08:40:16 +00:00
Dawn Chen
e3c019128e Add EventSource to api to have both Component and Host information. 2015-01-06 16:08:20 -08:00
Brendan Burns
0f60d7bca3 Reset the resourceVersion so that we poll again for non-timeout errors. 2015-01-06 11:45:03 -08:00
Daniel Smith
9c2cd55528 Merge pull request #3181 from smarterclayton/cleanup_http_items
Minor cleanups to request - fix initialism on HTTPClientFunc
2014-12-30 17:34:00 -08:00
Clayton Coleman
8005c85e6c Rename HttpClientFunc -> HTTPClientFunc 2014-12-30 19:34:06 -05:00
Clayton Coleman
502204ad6d Do not set empty field or label selectors on requests
Default behavior for "" is already "everything"
2014-12-30 19:33:40 -05:00
Clayton Coleman
e355f54eda Update references from Path() to the appropriate segment use 2014-12-29 15:38:52 -05:00
Clayton Coleman
afedbba3fc Introduce Resource/ResourceName/Prefix/Suffix options to RESTClient
RESTClient is an abstraction for simplifying access to resources that
follow the Kubernetes API pattern.  Currently, both Namespace and Path
are coupled, which means changes across versions is complex.  In general,
most access to resources should be to a resource collection (e.g.
"services") with a name (e.g. "foo"). Other constructs, like prefix sections
("watch") or proposed suffix sections ("/pods/foo/spec") only modify this
core pattern.

This commit removes the Path() helper from Request and introduces:

* Prefix(segments ...string) - segments that should go to the beginning of the path.
* Suffix(segments ...string) - segments that should go to the end of the path.
* Resource(string) - collection name, should be after prefix
* Namespace(string) - if specified, should be set after resource but before name
* Name(string) - if specified, should be after namespace

Now, only Prefix and Suffix are order dependent (and with variadics, should be
simpler).  Resource, Namespace, and Name may be specified in any order.

Path() has been removed to prevent downstream consumers of RESTClient from experiencing
behavior change.
2014-12-29 15:37:30 -05:00
Daniel Smith
998061677b Merge pull request #2909 from smarterclayton/passversiontorestmapper
Allow --api-version to properly override various default behaviors in CLI
2014-12-29 12:14:32 -08:00
Daniel Smith
9873d8a7d5 Merge pull request #2958 from rajdeepd/master
Added test cases for NewKubeletClient with TLS enabled
2014-12-29 11:47:47 -08:00
saadali
99acb9688c Have Http Probe report "Unhealthy" on connection failure instead of "Unknown". 2014-12-29 11:09:06 -08:00
Clayton Coleman
203246b7e0 Allow the api-version on the command to override the client builder 2014-12-22 14:52:03 -05:00
derekwaynecarr
652b7aa665 Rename namespaceAsPath 2014-12-22 12:24:21 -05:00
Daniel Smith
36cfc02c6c Merge pull request #3066 from derekwaynecarr/client_update
Do not use namespace in url paths pre v1beta3 from client
2014-12-19 18:02:55 -08:00
derekwaynecarr
abb6632d75 Do not use namespace in url paths pre v1beta3 from client 2014-12-19 16:32:42 -05:00
Daniel Smith
be9f3be709 better logging 2014-12-19 12:28:51 -08:00
Daniel Smith
a50f8034c8 Merge pull request #3037 from smarterclayton/hide_spurious_watch_errors
When connections are broken on Watch, write fewer errors to logs
2014-12-18 13:33:03 -08:00
Daniel Smith
3ade280f89 Merge pull request #2813 from derekwaynecarr/ns_url
Move namespace from query param to path part
2014-12-18 13:31:45 -08:00
Clayton Coleman
b2434de777 When connections are broken on Watch, write fewer errors to logs
Watch depends on long running connections, which intervening proxies
may break without the control of the remote server. Specific errors
handled are io.EOF, io.EOF wrapped by *url.Error, http connection
reset errors (caused by race conditions in golang http code), and
connection reset by peer (simply tolerated).
2014-12-18 16:15:51 -05:00
derekwaynecarr
cbbe61d115 Fix path ordering in client 2014-12-18 15:27:27 -05:00
Rajdeep Dua
05f0a9846b Added test cases for NewKubeletClient with TLS enabled 2014-12-18 00:57:33 -08:00
Salvatore Dario MINONNE
61ac2f7437 kubectl delete command: adding labelSelector
Add a Visitor pattern on top of ResourcesFromArgs

Allows ResourcesFromArgs to return an opaque list of items and have client
commands react to them.

Change request.go to return apiserver errors for arbitrary status codes to
better respond to generic actions that don't make sense (kubectl delete operations foo)
2014-12-17 18:15:03 +00:00
derekwaynecarr
7cf664439f Move namespace from query param to path part 2014-12-16 15:55:47 -05:00
Clayton Coleman
88715cc6ef Rename Event.Status to Event.Condition to match v1beta3 agreement
Question - should this be a phase?  Seems like no, since phase implies
defined lifecycle and this field is explicitly not defined.
2014-12-16 09:43:10 -05:00
Daniel Smith
f1f20f820a Merge pull request #2942 from brendandburns/kubelet
revert the revert along with fixes to make it pass e2e tests.
2014-12-15 13:17:52 -08:00
Brendan Burns
d345dda1e5 Fix the kubelet uses api encode/decode by actually adding PodContainerInfo to v1beta1 2014-12-15 11:38:55 -08:00
Joe Beda
26e5c1d0eb Merge pull request #2928 from rajdeepd/master
Added test cases for Event Create and Event List
2014-12-15 11:11:37 -08:00
Brendan Burns
a6f967b6e7 Revert "Revert "Add an api object for the kubelet, and a versioned endpoint.""
This reverts commit dcfcf315e5.
2014-12-15 09:29:04 -08:00
Rajdeep Dua
a6fd5601c2 Added test cases for
* Event Create
* Event List
2014-12-14 21:41:34 -08:00
Brendan Burns
dcfcf315e5 Revert "Add an api object for the kubelet, and a versioned endpoint."
This reverts commit d4b9979382.
2014-12-12 21:13:44 -08:00
Daniel Smith
9c0fbf1f02 Merge pull request #2908 from brendandburns/kubelet
Add an api object for the kubelet, and a versioned endpoint.
2014-12-12 16:01:46 -08:00
Brendan Burns
d4b9979382 Add an api object for the kubelet, and a versioned endpoint. 2014-12-12 15:26:28 -08:00
Brendan Burns
771c538932 Merge pull request #2864 from deads2k/deads-tighten-validation-on-bad-gets
tighten validation for client resource gets
2014-12-12 10:34:53 -08:00
Rajdeep Dua
b5c3e2d619 Added test case for events Create 2014-12-11 20:46:35 -08:00
deads2k
fa900e5d67 require names for gets 2014-12-11 11:21:40 -05:00
Joe Beda
b7705d25c8 Merge pull request #2827 from liggitt/tlsv1
Bump minimum TLS version from SSLv3 to TLSv1.0
2014-12-10 13:15:29 -08:00
Daniel Smith
272bfc97ed Merge pull request #2788 from smarterclayton/roundtrip_node_nodelist
Rename Minions -> Nodes internally
2014-12-10 11:12:15 -08:00
Clayton Coleman
d1d7505272 Rename client Minions->Nodes, select the correct path for v1beta3
Replaces the client public interface but leaves old references to "minions"
for a later refactor.  Selects the path "nodes" for v1beta3 and "minions"
for older versions.
2014-12-10 12:08:19 -05:00
Clayton Coleman
19379b5a38 Internal rename api.Minion -> api.Node 2014-12-10 12:08:18 -05:00
Jordan Liggitt
2475123d3c Bump minimum TLS version from SSLv3 to TLSv1.0 2014-12-10 09:13:15 -05:00
Mike Danese
50a6068b5d simplified TestNewKubeletClient in kubelet_test 2014-12-09 18:27:55 -08:00
Rajdeep Dua
00149c88f2 Added two test cases for KubeletClient 2014-12-07 21:46:14 -08:00
bgrant0607
f95503dc2d Merge pull request #2767 from ironcladlou/watch-error-handling
Log ErrUnexpectedEOF from watches as warnings
2014-12-05 13:43:26 -08:00
bgrant0607
cf7f3de767 Merge pull request #2762 from rajdeepd/master
Added a New test case for GetMinion
2014-12-05 13:24:24 -08:00
Dan Mace
0ad8342a55 Log ErrUnexpectedEOF from watches as warnings
Watches are often established via long-running HTTP GET requests which
will inevitably time out during the normal course of operations. When
the watches time out, an io.EOF or an io.ErrUnexpectedEOF will bubble
up to client components such as StreamWatcher and Reflector. Treat EOF
as a clean watch termination. Treat ErrUnexpectedEOF as a less-clean
but non-fatal watch termination and log the event at the warning level.

This greatly reduces the amount of log noise generated during what is
ultimately normal operation, and adds the flexibility for the operator
to make a distinction between the EOF conditions if so desired (by
adjusting the logging level).
2014-12-05 15:03:07 -05:00
Rajdeep Dua
2791a92f2c Added a New test case for GetMinion 2014-12-05 01:49:43 -08:00
Daniel Smith
df98babf6e Merge pull request #2748 from erictune/clean7
Rename watch.Mux -> watch.Broadcaster
2014-12-04 11:09:43 -08:00
Eric Tune
3f285269cc Rename watch.Mux -> watch.Broadcaster
A few reasons:
- Mux is already widely used in the codebase to refer to a http handler mux.
- Original meaning of Mux was something which sent a chose one of several inputs to
  and output.  This sends one output to all outputs.  Broadcast captures that idea
  better.
- Aligns with similar class config.Broadcaster (see #2747)
2014-12-04 00:30:51 -08:00
Rajdeep Dua
e47e1ee025 Added test case for ServerAPIVersions 2014-12-02 21:55:44 -08:00
Daniel Smith
3b2fa9618d Relax search criteria to find both pod & bound pod events 2014-12-01 17:19:42 -08:00