Commit Graph

572 Commits (ba95c8a1769338a8d9284f4a4ce9618b3b19380c)

Author SHA1 Message Date
Paul Morie a373b234e9 Fix event recorder not to log events without a reference 2015-03-10 11:36:43 -04:00
Federico Simoncelli 1b18440f35 kubelet: add GetNodeInfo implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:11:01 -04:00
Federico Simoncelli eb0b6f2bcf kubelet: improve client url composition
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:05:19 -04:00
Jerzy Szczepkowski 0342ba3476 Watch support in PodInterface.
Added Watch support to PodInterface. Extended pods e2e to test watch. Resolves #4777.
2015-03-10 09:45:44 +01:00
nikhiljindal 916ca9cc68 Changing v1beta3 field selectors to be camelCased 2015-03-09 18:01:01 -07:00
Jeff Lowdermilk a280e0da2d Revert "Standalone kubeconfig for gce kube-up" 2015-03-09 17:45:06 -07:00
Brian Grant 7b72d9539f Merge pull request #5054 from smarterclayton/switch_to_sub_bindings
Make Pod binding a subresource (and be generic to other types)
2015-03-09 16:41:26 -07:00
Satnam Singh 89bc7bbea9 Merge pull request #5154 from jlowdermilk/kube-up
Standalone kubeconfig for gce kube-up
2015-03-09 16:22:51 -07:00
Jeff Lowdermilk 4173d369aa Generate standalone kubeconfig on kube-up, clear on kube-down.
Also tweaked the ginkgo tests to pull auth directly from a kubeconfig file
instead of the legacy kubernetes_auth file.
2015-03-09 16:02:00 -07:00
Clayton Coleman dfc19185f5 Add a subbindings resource as /pods/{name}/binding
Allows POST to create a binding as a child. Also refactors internal
and v1beta3 Binding to be more generic (so that other resources can
support Bindings).
2015-03-09 15:37:19 -04:00
Clayton Coleman 227a1d306d Support SubResource call on Request
Allows better semantic use of Request when dealing with sub resources,
and allows clients to ignore ordering.  Supports multiple segments because
sub-resources are less tightly structured than regular resources.
2015-03-09 14:39:31 -04:00
Brendan Burns f505a33998 Differentiate between server error messages and client error messages in kubectl 2015-03-07 11:39:23 +01:00
Vish Kannan 53ec66caf4 Merge pull request #5152 from vmarmol/cadvisor-dep
Rename cAdvisor info API to cadvisorApi
2015-03-06 18:09:28 -08:00
Victor Marmol 43b469bd9f Rename cAdvisor info API to cadvisorApi 2015-03-06 16:06:38 -08:00
Vish Kannan 9e5c79a587 Merge pull request #5151 from vmarmol/cadvisor-dep
Update cAdvisor godep
2015-03-06 15:56:48 -08:00
Victor Marmol a35f4374c5 Update cAdvisor ContainerInfo references to v1 API.
The cAdvisor data structures were versioned recently. We use the v1
versions so this commit makes that explicit.
2015-03-06 15:42:06 -08:00
Eric Tune c12303eaa3 Merge pull request #4749 from derekwaynecarr/make_quota_more_efficient
Make admission control plug-ins work from indexes
2015-03-06 14:11:12 -08:00
Deyuan Deng 50de1a80c2 kubelet should take a client interface 2015-03-06 15:01:55 -05:00
Daniel Smith 244766ac89 Merge pull request #5002 from satnam6502/proxy-200
Do not fail status 200 responses to proxy calls
2015-03-06 10:20:07 -08:00
derekwaynecarr 2ed8eed004 Make admission control plug-ins work from indexes 2015-03-06 09:36:57 -05:00
Satnam Singh cb4c931b0b Do not fail status 200 responses to proxy calls 2015-03-06 00:29:19 -08:00
Daniel Smith 3ef3777192 Make unexported fields panic (informatively)
...Also fix some incorrect calls to semantic.DeepEqual, and a bug where
it returned true incorrectly.
2015-03-05 21:40:37 -08:00
Satnam Singh 61e38920a5 Do not fail status 200 responses to proxy calls 2015-03-05 16:19:13 -08:00
Salvatore Dario Minonne 75f2efb500 moving ParseSelector to Parse for labels only. 2015-03-05 22:39:36 +01:00
Paul Morie 02b18edac6 Allow multiple sources to be used with record package 2015-03-05 13:54:29 -05:00
Brian Grant 9fcb48cab6 Merge pull request #4434 from ddysher/node-hostip
Node addresses
2015-03-05 10:33:15 -08:00
derekwaynecarr 21031e37c7 Filter irrelevant pods from quota 2015-03-05 10:18:19 -05:00
Deyuan Deng 9b0af8df63 Node addresses 2015-03-04 16:47:31 -05:00
Eric Tune 662189ebc2 Merge pull request #4967 from jlowdermilk/kubeconfig
Simplify generating kubeconfig with embeded cert data
2015-03-04 08:38:43 -08:00
Jeff Lowdermilk 6e704d174d Simplify generating kubeconfig with embeded cert data 2015-03-03 12:18:07 -08:00
Zach Loafman 5f35a67002 Revert "Adding converter functions to convert field label selectors to internal version before matching" 2015-02-28 11:42:49 -08:00
Daniel Smith 554b1c847c add occasional polling to reflector 2015-02-27 16:59:14 -08:00
Daniel Smith 156c505946 clean up poller test to not make infinite log messages 2015-02-27 16:51:03 -08:00
nikhiljindal 48e7945f65 Versioning the field selectors 2015-02-27 16:10:59 -08:00
Daniel Smith 650f6cb826 Revert "Multi-port Endpoints" 2015-02-23 13:53:21 -08:00
Tim Hockin 160f288832 Implement multi-port Endpoints
This is a part of multi-port services.
2015-02-22 09:35:12 -08:00
Brendan Burns 9829128a75 Merge pull request #4580 from thockin/plural_20_endpoints
Part 2 of plural ports: make endpoints a struct
2015-02-20 15:42:19 -08:00
Andy Goldstein bd2eb2fa8f Fix flaky exec/portforward tests
Fixes #4676
2015-02-20 16:29:57 -05:00
Victor Marmol eb343d2768 Merge pull request #4659 from deads2k/deads-tolerate-empty-file
tolerate empty .kubeconfig files
2015-02-20 10:19:14 -08:00
Clayton Coleman a17517ff6e Merge pull request #4641 from smarterclayton/make_loading_config_data_easier
Split TLS loading to allow 3rd parties to load keys easily
2015-02-20 12:04:08 -05:00
Andy Goldstein 5bd0e9ab05 Add streaming command execution & port forwarding
Add streaming command execution & port forwarding via HTTP connection
upgrades (currently using SPDY).
2015-02-20 09:57:02 -05:00
deads2k 03dde0fc46 tolerate empty .kubeconfig files 2015-02-20 08:27:08 -05:00
Clayton Coleman 60c014334f Split TLS loading to allow 3rd parties to load keys easily
The LoadTLSFiles method is useful for configuration code that needs
to read the current client config and get values out for creating
other config files.
2015-02-19 20:54:21 -05:00
Daniel Smith 40f8dfc54c Merge pull request #4621 from ironcladlou/fifo-add-if-not-present
Support AddIfNotPresent function
2015-02-19 14:22:29 -08:00
Dan Mace 45372a90f8 Support AddIfNotPresent function
Add an AddIfNotPresent function to support single producer/consumer
retry scenarios. Provides the consumer with a means to prefer items
already enqueued by the producer at the point of retry.
2015-02-19 17:04:55 -05:00
Jeff Lowdermilk 703b642886 Merge pull request #4517 from liggitt/kubeconfig_cert_data
Let .kubeconfig be a single-source config for API clients
2015-02-19 10:22:58 -08:00
roberthbailey bab8393e6a Merge pull request #4278 from brendandburns/kubecfg
Add an (optional) proxy to the TLS config.
2015-02-19 09:17:27 -08:00
Jordan Liggitt abb38cf793 Let .kubeconfig populate ca/cert/key data, and basic-auth username/password in client configs 2015-02-19 11:29:42 -05:00
Jordan Liggitt 945616a6f9 Surface load errors when reading .kubeconfig files 2015-02-18 23:34:51 -05:00
Tim Hockin ae0062d001 Part 2 of plural ports: make endpoints a struct
Includes conversions for v1b[12] and tests and fixups for call sites.
2015-02-18 19:54:15 -08:00
Paul Morie fb001ada21 Secret API resource 2015-02-18 11:54:56 -05:00
Eric Tune 7990b54803 Merge pull request #4444 from saad-ali/eventsCacheLru
Switch events history to use LRU cache instead of map
2015-02-17 16:05:11 -08:00
Clayton Coleman 4859aa7cd8 Merge pull request #4453 from derekwaynecarr/make_quota_more_efficient
Make ListWatch work with a ListFunc and WatchFunc
2015-02-17 14:48:11 -05:00
saadali 2735e6a495 Switch events history to use LRU cache instead of map 2015-02-17 11:40:40 -08:00
Clayton Coleman 7e07d711b8 Provide a helper on client/request.go for full URI
Allows self links to be directly passed
2015-02-16 16:31:32 -05:00
Clayton Coleman 3e2e4714a2 Always set ?namespace in query if specified
Revise our code to only call Request.Namespace() if a namespace
*should* be present.  For root scoped resources, namespace should
be ignored.  For namespaced resources, it is an error to have
Namespace=="".
2015-02-16 00:23:38 -05:00
derekwaynecarr c0ce15c588 Make list watch take a ListFunc and WatchFunc, provide default funcs from client 2015-02-15 22:26:05 -05:00
deads2k fef503932f properly handle mergo map versus value rules 2015-02-13 08:29:00 -05:00
Brendan Burns e300d6c94b Merge pull request #4399 from derekwaynecarr/update_cache_func
If an object has no namespace, do not add a leading slash
2015-02-12 16:17:41 -08:00
derekwaynecarr 192e186119 If an object has no namespace, do not add a leading slash 2015-02-12 17:14:16 -05:00
Clayton Coleman 0b3162b3f4 Merge pull request #4306 from saad-ali/eventCompression1
Compress recurring events in to a single event to optimize etcd storage
2015-02-12 16:59:19 -05:00
Clayton Coleman 0a435c815f Merge pull request #4313 from derekwaynecarr/client_watch_namespaces
Add ability to watch namespaces from client
2015-02-12 11:51:19 -05:00
derekwaynecarr 73aa0cc192 Add a unit test to exercise watch 2015-02-12 11:25:33 -05:00
Saad Ali b5f4849a53 Merge pull request #4364 from vmarmol/cleanup
Minor clarification of --server flag.
2015-02-12 07:54:39 -08:00
Clayton Coleman 371349f858 Merge pull request #4125 from derekwaynecarr/store_by_namespace
Enable look-up by secondary index in cache
2015-02-12 09:44:26 -05:00
derekwaynecarr e76dcbdfa2 Add ability to watch namespaces 2015-02-12 09:42:29 -05:00
saadali 033577efa2 Optimize etcd storage by compressing recurring events in to a single event 2015-02-11 22:57:44 -08:00
Victor Marmol 0a64fecaf5 Minor clarification of --server flag.
Fixes #3425.
2015-02-11 17:04:41 -08:00
derekwaynecarr 0bd0e12bbc Add support for Namespace as Kind
Add example for using namespaces
2015-02-10 09:50:50 -05:00
Brendan Burns 3fa9ddd1e1 Add an (optional) proxy to the TLS config.
Also fill in some other reasonable defaults.
2015-02-10 05:20:47 -08:00
derekwaynecarr 53f1efa484 Make sure we remove old object from index before adding new 2015-02-09 16:44:51 -05:00
derekwaynecarr 1cf69bdefc Support multiple index functions, address feedback 2015-02-09 16:44:51 -05:00
derekwaynecarr 7a2d63048d Enable look-up by secondary index in cache 2015-02-09 16:44:51 -05:00
saadali 79cbcf918e Modify Event struct to allow compressing multiple recurring events in to a single event.
# *** ERROR: *** Some API files are missing the required field descriptions
# Add description tags to all non-inline fields in the following files:
#   pkg/api/v1beta1/types.go
#   pkg/api/v1beta2/types.go
#
# Your commit will be aborted unless you fix these.
#   COMMIT_BLOCKED_ON_DESCRIPTION
2015-02-05 21:50:29 -08:00
Mike Danese 14bfec92f2 rename probe.Status to probe.Result. 2015-02-05 15:49:58 -08:00
Clayton Coleman 0307d7ba98 Set a default user agent on all client.Client calls
Form:
  kube-controller-manager/v0.10.0 (linux/amd64) kubernetes/550b98e

  <basename(os.Argv)>/<gitVersion> (<GOOS>/<GOARCH>) kubernetes/<shortGitCommit>

Can be set by other clients
2015-02-04 17:45:53 -05:00
Brian Grant 3f28badae3 Merge pull request #3854 from yujuhong/defaults
Migrate API defaulting to a centralized location
2015-02-04 11:41:23 -08:00
deads2k bc93de314a remove --ns-path option from .kubeconfig file, kick tests 2015-02-03 14:22:55 -05:00
Yu-Ju Hong 4a72addaeb Factor out API defaulting from validation logic
Currently, the validation logic validates fields in an object and supply default
values wherever applies. This change factors out defaulting to a set of
defaulting callback functions for decoding (see #1502 for more discussion).

 * This change is based on pull request 2587.

 * Most defaulting has been migrated to defaults.go where the defaulting
   functions are added.

 * validation_test.go and converter_test.go have been adapted to not testing the
   default values.

 * Fixed all tests with that create invalid objects with the absence of
   defaulting logic.
2015-02-03 00:55:42 -08:00
Brendan Burns d9c9856889 Merge pull request #3992 from smarterclayton/allow_namespace_short
Allow commands to specify a short namespace
2015-02-02 10:56:33 -08:00
Alex Robinson 59ee1d901a Merge pull request #4016 from smarterclayton/add_getbykey_to_store
Add a GetByKey method to Store
2015-02-02 10:51:57 -08:00
Clayton Coleman f398fd2084 Merge pull request #3959 from smarterclayton/expose_tls_config_and_wrappers
Allow client.Config to be used for HTTP2 and WebSocket connections
2015-02-02 13:20:30 -05:00
Clayton Coleman 3ca23163ae Add a GetByKey method to Store
Without the ability to retrieve underlying items by key (instead of
the object passed to KeyFunc) it is impossible to build wrappers
around cache.Store that want to make decisions about keys, because
they would need to reconstruct the object passed to Get.

This allows retrieval by key, and makes sure Get(obj) uses it.
2015-02-01 14:55:45 -05:00
Clayton Coleman 2d5c6b4443 Allow commands to specify a short namespace
OpenShift currently uses '-n', so opening up the potential for downstream
to set a short namespace.  However, this should only be used in general for
commands that want to work across namespaces frequently - such as admin
level operations on entire namespaces like quota or cleanup behavior where
you have permissions and need to rapidly switch.
2015-01-30 17:47:40 -05:00
Clayton Coleman f04769a595 Merge pull request #3983 from deads2k/deads-relative-paths-in-kubeconfig
resolve relative paths in kubeconfig
2015-01-30 14:45:01 -05:00
deads2k aba73493de resolve relative paths in kubeconfig 2015-01-30 14:01:24 -05:00
Clayton Coleman 556e59b512 Merge pull request #3810 from ironcladlou/cache-namespacing
Support namespacing in cache.Store
2015-01-30 13:19:41 -05:00
Clayton Coleman c1a5e14270 Provide a better error when Kubelet pod status is unexpected
Treat HTTP errors with respect, provide a distinct error message
2015-01-29 19:05:41 -05:00
Clayton Coleman d072232d4a Allow client.Config to be used for HTTP2 and WebSocket connections
client.Config describes how to make a client connection to a server
for HTTP traffic, but for connection upgrade scenarios cannot be
used because the underlying http.Transport object can't allow the
connection to be hijacked. Reorganize the TLS and connection wrapper
methods so that a sophisticated client can do:

    cfg := &client.Config{...} // from somewhere
    tlsConfig, _ := client.TLSConfigFor(cfg)
    _ := conn.Dial(...)
    rt := MyRoundTripper() // some func that implements grabbing requests
    wrapper, _ := client.HTTPWrappersFor(cfg)
    req := &http.Request{}
    req.Header.Set("Connection-Upgrade", ...)
    _, := wrapper.RoundTrip(req)
    // rt has been invoked with a fully formed Req with auth
    rt.Req.Write(conn)
    // read response for upgrade

It would be good to have utility function that does more of this,
but mostly enabling the HTTP2/SPDY client exec function right now.
2015-01-29 17:43:09 -05:00
Dan Mace 5ee943d683 Support namespacing in cache.Store implementations
Support namespacing in cache.Store by framing the interface functions
around interface{} and providing a key function to each Store implementation.

Implementation of a fix for #2294.
2015-01-29 17:39:49 -05:00
nikhiljindal dc92d3c7a2 Cleaning up the operations code in client 2015-01-28 21:04:16 -08:00
derekwaynecarr 9674f08504 Added unit tests for incrementing usage 2015-01-28 15:03:19 -05:00
derekwaynecarr 829fa69527 Introduce a ResourceQuota object 2015-01-28 15:03:19 -05:00
Tim Hockin c8f61885df Merge pull request #3695 from mikedanese/ready
refactor pkg/health into more reusable pkg/probe
2015-01-28 11:00:32 -08:00
Clayton Coleman 5117189e03 Merge pull request #3707 from nikhiljindal/preOperations
Removing support for asynchronous server requests
2015-01-28 13:02:52 -05:00
nikhiljindal de60600608 Making all operations synchronous 2015-01-27 18:47:56 -08:00
Satnam Singh 3a9e6d8f29 Switch to use Too Many Requests response code
Name the 429 status code
2015-01-27 14:54:30 -08:00
derekwaynecarr 74f368f50e Modified LimitRangeItem.Kind to LimitRangeItem.Type, added example files 2015-01-27 16:41:28 -05:00
derekwaynecarr 091cbe5fa2 Add a limit range resource 2015-01-27 16:41:27 -05:00
Mike Danese 5dc6362f8a rename probe.Healthy to probe.Success and renam probe.Unhealthy to probe.Failure. 2015-01-27 11:20:30 -08:00
Mike Danese a298402bd4 remove pkg/health and move everything over to pkg/probe 2015-01-27 11:20:30 -08:00
Clayton Coleman 6410f37a32 Merge pull request #3591 from ddysher/node-client-update
Add node update method to client interface
2015-01-26 15:47:18 -05:00
Deyuan Deng e71227388e add node update method to client interface 2015-01-23 16:40:33 -05:00
Satnam Singh 8350bb9700 Add a Retry-After header when rate limit is exceeded 2015-01-22 16:03:00 -08:00
Clayton Coleman b5bc0c1619 Merge pull request #3700 from smarterclayton/add_run_until_to_reflector
Add RunUntil to the Reflector and Poller to allow early termination
2015-01-21 20:00:25 -05:00
Clayton Coleman f2d966859d Add RunUntil to the Reflector and Poller to allow early termination
This is useful for test suites where you want to kill your workers
without having to run one test env per execution.
2015-01-21 18:25:54 -05:00
Tim Hockin 7dd0400065 Merge pull request #3470 from deads2k/deads-add-kubecfg-ns
respect namespace from .kubeconfig file
2015-01-21 12:58:06 -08:00
Brian Grant 54ad81759a Merge pull request #3677 from filbranden/flag_shorthand_refactor1
Flag shorthand refactor1
2015-01-21 10:41:26 -08:00
Filipe Brandenburger 0bfeeb84ca Make short flags optional, refactor code to use StringVarP directly.
There is no need to check for an empty string and call StringVar or
StringVarP depending on the case, since StringVar is essentially the
same as a call to StringVarP with an empty string.

This turns 6 lines of code back into 1.

Remove the TODO comments since removing the short flags will no longer
simplify this code significantly.
2015-01-21 07:58:02 -08:00
Filipe Brandenburger af76d14e2e Revert "fixup repeated usage strings"
This reverts commit 469bd2b641.
2015-01-21 07:56:24 -08:00
Jordan Liggitt f71521d758 Allow overriding global default cluster host 2015-01-21 10:38:58 -05:00
deads2k 469bd2b641 fixup repeated usage strings 2015-01-21 08:12:24 -05:00
Clayton Coleman 494d003981 Merge pull request #3641 from deads2k/deads-make-short-flags-optional
make shorthand flags optional
2015-01-20 17:23:10 -05:00
deads2k 8c01729f38 make shorthand flags optional 2015-01-20 16:21:27 -05:00
deads2k dd01137138 add namespace to kubeconfig file 2015-01-20 16:07:54 -05:00
Joe Beda f90ad573cf Merge pull request #3610 from liggitt/kubelet_tls_client
Build TLS client for kubelet correctly
2015-01-20 10:56:52 -08:00
Jordan Liggitt 888fe4b175 Build TLS client for kubelet correctly 2015-01-19 12:26:12 -05:00
Andrew Seidl 6dee1d7fa4 Fix typos in user-facing strings 2015-01-18 01:32:34 -06:00
Filipe Brandenburger 6d9845361f Merge pull request #3577 from erictune/fixforfilib
Test for and fix crash with nil client in kubelet.
2015-01-16 13:53:29 -08:00
Eric Tune 98bdd3f7c4 Test for and fix crash with nil client in kubelet.
Added test that fails before fix.
Fixed use of nil pointer.
2015-01-16 13:39:31 -08:00
Joe Beda 474212106f Merge pull request #3564 from liggitt/client_cert_data
Allow client and kubelet configs to hold cert/key/ca data directly
2015-01-16 13:19:52 -08:00
Brendan Burns e86c8f9e53 Merge pull request #3565 from dchen1107/podstatus
Introduce PodStatusResult, and deprecate PodContainerInfo.
2015-01-16 12:05:07 -08:00
Jordan Liggitt 1ebe885827 Allow client and kubelet configs to hold cert/key/ca data directly 2015-01-16 12:18:20 -05:00
Dawn Chen 15e9fa8a9d Introduce PodStatusResult, and deprecate PodContainerInfo. 2015-01-16 09:10:40 -08:00
davidopp 2675cfa16b Merge pull request #2906 from abhgupta/abhgupta-dev
Enhancements to scheduler priority functions
2015-01-14 21:47:28 -08:00
Daniel Smith 4738da0822 fix build 2015-01-14 16:12:22 -08:00
Daniel Smith 2bee4ac572 Merge pull request #3381 from a-robinson/events2
Improve client recording of events such that clients are
2015-01-14 15:21:16 -08:00
Daniel Smith c13ae34b02 Merge pull request #3445 from saad-ali/fix3172
Remove CONDITION from event object completely
2015-01-14 15:03:06 -08:00
saadali 90dfdcecd5 Remove CONDITION from event object completely
# *** ERROR: *** Some files have not been gofmt'd.  To fix these
# errors, run gofmt -s -w <file>, or cut and paste the following:
#   gofmt -s -w pkg/kubecfg/resource_printer.go pkg/proxy/config/config.go pkg/runtime/types.go
#
# Your commit will be aborted unless you override this warning. To
# commit in spite of these format errors, delete the following line:
#   COMMIT_BLOCKED_ON_GOFMT
2015-01-14 14:17:16 -08:00
Tim Hockin e86d4cd3c6 Use a strong type for UID fields 2015-01-14 13:53:43 -08:00
Alex Robinson 90e1d58fa6 Add a unit test for watch.Broadcaster DropIfChannelFull and a couple small fixes 2015-01-14 04:36:29 +00:00
deads2k b51a717f6e add kubectl config 2015-01-13 16:19:57 -05:00
Alex Robinson 3eaf362f8e Switch the client event recorder from exponential backoff to one random
sleep on the first failed request followed by a constant amount on all
subsequent consecutive failed requests.
2015-01-13 19:48:41 +00:00
Daniel Smith 224a8d634b Merge pull request #3384 from derekwaynecarr/list_watch_by_namespace
Add ability to listwatch a resource in an optional namespace
2015-01-13 11:15:27 -08:00
Abhishek Gupta 6fd0b181e3 Rebased onto the latest changes to the scheduler code 2015-01-13 09:41:25 -08:00
Alex Robinson be6b1cf0e2 Push the full channel logic into the implementation of the broadcaster
in watch/mux.go rather than being in the client event recording code.
2015-01-13 02:22:30 +00:00
Alex Robinson 702a6f96b4 Improve client recording of events such that clients are
(1) less likely to drop events if the master is unavailable
(2) less likely to have goroutines block while trying to record an
event.

Done as part of #3163 to ensure that minions operate well even while the
master is down.
2015-01-13 02:22:30 +00:00
Joe Beda 16d0a837f2 Merge pull request #3414 from liggitt/cafile
Use CAFile even if client certificate is not specified
2015-01-12 17:44:51 -08:00
Jordan Liggitt 1f8a74626f Use CAFile even if client certificate is not specified 2015-01-12 16:38:48 -05:00
Eric Tune 00c05053b7 Rename ListPods methods to List.
For greater similarity to pkg/client.
Does not cover registry's ListPods.
Fix an example in a comment.
2015-01-09 23:46:02 -08:00
derekwaynecarr 7c630fd797 Add ability to listwatch in namespace 2015-01-10 01:04:26 -05:00
Daniel Smith 6cd37637f5 Merge pull request #3365 from smarterclayton/test_coverage
Reenable coverage and race detection on Travis
2015-01-09 16:35:18 -08:00
Eric Tune f381579a89 Fix flaky test.
Maps are randomly reordered.
But there is only one order for one thing.
2015-01-09 16:23:53 -08:00
Eric Tune 793bf6a79d Added UndeltaStore.
This will be used to connect Reflector to kubelet update channel.

Added testing.
2015-01-09 12:40:07 -08:00
Clayton Coleman cacd2ac40b Shorten client/record test by changing default value
Also add opinionated comment about using singletons in code
2015-01-09 13:16:30 -05:00
Clayton Coleman 68298f08a4 Merge pull request #3353 from thockin/errors
Cleaner aggregate errors API
2015-01-09 11:50:57 -05:00
Tim Hockin 4fcd496d59 change everything to use new util/errors 2015-01-08 22:10:03 -08:00
Daniel Smith e91a697445 Merge pull request #3346 from erictune/addservicelister
Addded a StoreToServiceLister.
2015-01-08 17:35:13 -08:00
Eric Tune 83aed75556 Addded a StoreToServiceLister. 2015-01-08 15:29:08 -08:00
Jeff Lowdermilk b26dfacfff Merge pull request #3316 from deads2k/deads-add-kubeconfig-file-properly
add kubeconfig file properly
2015-01-08 13:50:52 -08:00
deads2k 60a46e7d49 fixes e2e failure on gce with new .kubeconfig, kick travis 2015-01-08 16:31:25 -05:00
deads2k 005f2e1bda don't require config.Version for IsConfigTransportTLS 2015-01-08 13:53:57 -05:00
Clayton Coleman 7fd887df61 Enable v1beta3 API via --runtime_config=api/v1beta3 flag
This exposes the proper v1beta3 API endpoint when the user specifies
the --runtime_config=api/v1beta3 argument to the apiserver. v1beta3
is still considered experimental and subject to change.

--runtime_config is a map of string keys and values, that can be
specified by providing

    --runtime_config=a=b,b=c,d,e

Only the key must be specified, the value can be omitted.

Enables v1beta3 in hack/local-up-cluster.sh and hack/test-cmd.sh
2015-01-08 13:01:24 -05:00
Clayton Coleman 8262c30c97 Improve serialization round trip test and add v1beta3 2015-01-08 12:44:28 -05:00
Clayton Coleman 8f65442c2f Client should not include ns/ for non-namespaced calls in v1beta3 2015-01-08 12:44:07 -05:00
deads2k 480635bb72 Revert "Revert "add kubeconfig types""
This reverts commit 02dbad7094.
2015-01-08 09:42:30 -05:00
Tim Hockin 5f2dae4dd8 Merge pull request #3195 from lavalamp/numericWire
Add numeric type into api
2015-01-07 16:15:52 -08:00
Daniel Smith 963000715a Merge pull request #3294 from erictune/public_storetoers
Move Listers to pkg/client/cache.
2015-01-07 15:56:14 -08:00
Eric Tune ed74197fde Move Listers to pkg/client/cache.
I would like to use these in kubelet and kube-proxy.
This is the minimal change to get them moved.
I will follow up with changes to make interfaces consistent
and add Listers for other resources.
2015-01-07 15:33:17 -08:00
Daniel Smith 2050131b9a ParseOrDie -> MustParse; stop returning pointer 2015-01-07 15:21:35 -08:00
Daniel Smith 7f49ba0dcf Put quantity into packages
kubelet, GCE, validation, client
2015-01-07 15:21:34 -08:00
Clayton Coleman b03fbf90f8 Make RESTClient more generic to API version, simplify version handling
RESTClient is an abstraction on top of arbitrary HTTP endpoints that
follow the Kubernetes API conventions. Refactored RESTClientFor so that
assumptions that are Kube specific happen outside of that method (so
others can reuse the RESTClient). Added more validation to client.New
to ensure clients give good input. Exposed APIVersion on RESTClient
as a method so that wrapper code (code that adds typed / structured
methods over rest endpoints like client.Client) can more easily make
decisions about what APIVersion it is running under.
2015-01-07 18:03:34 -05:00
Tim Hockin d314862e46 Merge pull request #3285 from erictune/public_reflectors
Make Reflector helpers reusable.
2015-01-07 14:10:57 -08:00
Eric Tune 7d5ac856c5 Make Reflector helpers reusable.
Scheduler uses Reflector from pkg/client/cache.
It defines some helper classes.
I'd like to use those helpers with pkg/client/cache
in kube-proxy and kubelet too.
2015-01-07 13:49:37 -08:00
Brendan Burns 02dbad7094 Revert "add kubeconfig types" 2015-01-07 12:39:37 -08:00
Clayton Coleman 585d2c8cbd Merge pull request #2861 from deads2k/deads-add-clicfg-types
add kubeconfig types
2015-01-07 13:35:50 -05:00
bgrant0607 6e24273937 Merge pull request #3061 from jlowdermilk/rollingupdate
Add a rollingupdate lib and command to kubectl
2015-01-07 10:33:39 -08:00
deads2k 0e688dc271 add kubeconfig file 2015-01-07 13:09:10 -05:00
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
Jeff Lowdermlk 0ab39df66b Add a rollingupdate lib and command to kubectl
Also decouple conditions from client for testability.
2015-01-06 17:29:05 -08: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