Tim Hockin
186818d787
WIP: Implement multi-port Services
2015-03-30 19:28:11 -07:00
saadali
e0f71cb21f
Make each new instance of kubelet generate a new event channel (instead of reusing existing).
2015-03-30 14:22:16 -07:00
Brian Grant
c9ad322ba9
Merge pull request #5831 from smarterclayton/add_more_errors
...
Add more specific error handling and handle generic errors more effectively
2015-03-27 14:17:11 -07:00
Clayton Coleman
aa44d29d10
Updated documentation and adjusted field names
2015-03-27 17:08:59 -04:00
Tim Hockin
8ae203825b
Implement multi-port endpoints
...
Instead of endpoints being a flat list, it is now a list of "subsets"
where each is a struct of {Addresses, Ports}. To generate the list of
endpoints you need to take union of the Cartesian products of the
subsets. This is compact in the vast majority of cases, yet still
represents named ports and corner cases (e.g. each pod has a different
port number).
This also stores subsets in a deterministic order (sorted by hash) to
avoid spurious updates and comparison problems.
This is a fully compatible change - old objects and clients will
keepworking as long as they don't need the new functionality.
This is the prep for multi-port Services, which will add API to produce
endpoints in this new structure.
2015-03-27 12:36:32 -07:00
Brian Grant
984bc8d5f6
Merge pull request #5635 from ravigadde/master
...
Add timeout to kubelet client
2015-03-26 14:55:24 -07:00
Clayton Coleman
524f8731b5
Decode errors returned to clients by the Watch interface
2015-03-26 17:30:13 -04:00
Clayton Coleman
30358e8b04
Add more specific error handling and handle generic errors more effectively
...
The client library should type more generic errors from the server.
2015-03-26 17:30:13 -04:00
derekwaynecarr
267ef26b0f
Do not block admission if namespace already exists
2015-03-26 15:59:09 -04:00
Brian Grant
3b0db99692
Merge pull request #5915 from piosz/api
...
Changed PodInfo to be a list
2015-03-26 12:46:50 -07:00
Vish Kannan
f2e47a29e1
Merge pull request #5994 from dchen1107/clean
...
Fixed an issue on searching events by a given fieldSelector. The issue b...
2015-03-26 10:21:09 -07:00
Dawn Chen
ab0e9f1d41
Fixed an issue on searching events by a given fieldSelector. The issue break
...
the events reported for kubectl describe pods completely.
Fixed #5957
2015-03-26 10:00:10 -07:00
gmarek
5a11748018
Move Capacity from NodeSpec to NodeStatus
2015-03-26 15:28:48 +01:00
Piotr Szczesniak
31901ed9d0
Changed PodInfo to be a list
...
This change is to make API consistent with our convention.
Fixes #3622
2015-03-26 10:15:25 +01:00
Clayton Coleman
b1ab14315b
Clients should not check conditions, UpdateStatus() is inconsistent
...
Corrects some of the cargo culting that has crept into the API.
2015-03-25 16:25:04 -04:00
nikhiljindal
ba3746172f
Updating unit tests for pkg/client so that they pass with v1beta3 api
2015-03-24 18:54:02 -07:00
Brian Grant
d75291dbe7
Merge pull request #5838 from nikhiljindal/clientTests
...
Updating unit tests so that they pass with v1beta3 api
2015-03-24 17:30:50 -07:00
Piotr Szczesniak
fef81150b9
Merge pull request #5858 from a-robinson/timeout
...
Increase the client-specified timeout for service create/update/delete.
2015-03-24 21:42:01 +01:00
Alex Robinson
ab67cba7fb
Increase the client-specified timeout for service create/update/delete.
...
This is only temporary until external load balancer creation is changed to
be asynchronous.
2015-03-24 20:17:36 +00:00
nikhiljindal
7e3b7f9673
Updating unit tests so that they pass with v1beta3 api
2015-03-24 12:13:53 -07:00
Clayton Coleman
aee9bdd69a
Merge pull request #5805 from liggitt/node_proxy
...
Improve ResourceLocation API, allow proxy to use authenticated transport
2015-03-24 13:01:54 -04:00
Clayton Coleman
97560c409f
Merge pull request #5554 from derekwaynecarr/namespace_controller
...
Namespace Controller to support Namespace Termination
2015-03-24 12:59:00 -04:00
Jordan Liggitt
a75b501821
Improve ResourceLocation API, allow proxy to use authenticated transport
2015-03-24 11:11:34 -04:00
derekwaynecarr
29c491ef2e
Namespace.Spec.Finalizer support
2015-03-24 10:36:06 -04:00
Wojciech Tyczynski
f7191d626d
Change "/ns" to "/namespaces" in few remaining places.
2015-03-24 13:05:32 +01:00
Clayton Coleman
d46087db50
Move REST* interfaces into pkg/api/rest
...
Dependency chain is now api -> api/rest -> apiserver. Makes the
interfaces much cleaner to read, and cleans up some inconsistenties
that crept in along the way.
2015-03-23 16:52:21 -04:00
Saad Ali
e8f70428fb
Merge pull request #5715 from jszczepkowski/kubelet-nodesel
...
Running node selector predicate on kubelet.
2015-03-23 11:06:00 -07:00
Clayton Coleman
d19aac80ea
Merge pull request #5533 from smarterclayton/burn_yaml_with_fire
...
Burn YAML with fire (kind of)
2015-03-23 13:45:52 -04:00
Jerzy Szczepkowski
34a8a3a844
Running node selector predicate on kubelet.
...
Added checking on kubelet if scheduled pods have matching node selector. This is the last step to fix #5207 .
2015-03-23 08:21:58 +01:00
Ravi Gadde
5871e53060
Add timeout to kubelet client
2015-03-20 18:46:45 -07:00
nikhiljindal
1b87060aec
Adding GetFieldSelector() to client.EventInterface
2015-03-20 13:58:23 -07:00
Clayton Coleman
6918a4d32e
Replace automatic YAML decoding with opt-in YAML decoding
...
Base codecs no longer automically handle YAML. Instead, clients
must convert to JSON first via yaml.ToJSON and runtime.YAMLDecoder.
2015-03-20 00:03:56 -04:00
Brian Grant
11f9733599
Merge pull request #5587 from nikhiljindal/enable3
...
Updating integration tests to test both API versions - v1beta1 and 3
2015-03-18 16:14:20 -07:00
nikhiljindal
7e36bbab3c
Updating integration tests to test both API versions - v1beta1 and 3
2015-03-18 15:24:11 -07:00
Jeff Lowdermilk
72699606a9
Merge pull request #5541 from deads2k/deads-expose-resolve-local-paths
...
allow any number of kubeconfig files
2015-03-18 10:46:47 -07:00
Filip Grzadkowski
1a352b74ba
Periodically update pod status from kubelet.
2015-03-18 12:11:39 +01:00
Salvatore Dario Minonne
31ddefc347
Finalize fields.Selector
2015-03-17 22:55:43 +01:00
Victor Marmol
668e2dbcd8
Merge pull request #5502 from wojtek-t/completely_remove_bound_pods
...
Remove BoundPod type from source code
2015-03-17 08:09:50 -07:00
Filip Grzadkowski
18b728ff44
Revert "Periodically update pod status from kubelet."
2015-03-17 13:51:45 +01:00
deads2k
8555ed3ede
allow any number of kubeconfig files
2015-03-17 08:49:34 -04:00
Wojciech Tyczynski
e6d188fca8
Remove BoundPod structure
2015-03-17 10:27:41 +01:00
Victor Marmol
009737e69e
Merge pull request #5205 from fgrzadkowski/sync_pod_status
...
Periodically update pod status from kubelet.
2015-03-16 17:04:31 -07:00
Brian Grant
2f9a41b898
Merge pull request #5233 from brendandburns/labels
...
Make label and field selector query strings versionable.
2015-03-16 16:01:37 -07:00
Filip Grzadkowski
336525a27d
Periodically update pod status from kubelet.
2015-03-16 23:03:03 +01:00
Jeff Lowdermilk
2a8528704a
Merge pull request #5446 from lavalamp/fix2
...
Add a system modeler to scheduler
2015-03-16 10:21:02 -07:00
Daniel Smith
992d78a32e
Add a system modeler to scheduler
...
So it can try to predict the effect its bindings will have.
2015-03-13 17:48:16 -07:00
derekwaynecarr
799e3fa9cc
Eliminate ResourceQuotaUsage in favor of ResourceQuota status
2015-03-13 16:52:09 -04:00
Daniel Smith
e3594dfe2f
Merge pull request #5404 from derekwaynecarr/delete_events
...
Client support to delete events
2015-03-13 12:36:43 -07:00
Ravi Sankar Penta
f6ecec5880
Allow admin user to explicitly unschedule the node
...
Setting Unschedulable on the node will not touch any existing pods
on the node but will block scheduling of new pods on the node.
2015-03-12 14:27:27 -07:00
derekwaynecarr
703d2a87bf
Client support to delete events
2015-03-12 16:55:31 -04:00
Brendan Burns
266234f3b9
Make label and field selector query strings versionable.
2015-03-12 12:24:07 -07:00
Wojciech Tyczynski
9f2f10d6db
Make scheduler to watch PodSpec.Host instead Status.Host
2015-03-12 13:38:58 +01:00
Zach Loafman
e780592315
Merge pull request #5264 from jlowdermilk/kube-up
...
Standalone kubeconfig for gce kube-up (mulligan)
2015-03-11 11:46:45 -07:00
Daniel Smith
6606f9c9f5
double-fix crash on my cluster
2015-03-11 09:54:33 -07:00
Jeff Lowdermilk
7db006ab1a
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-10 14:23:34 -07:00
Salvatore Dario Minonne
925fa6baf8
Adding fields selector
2015-03-10 22:13:10 +01:00
Brian Grant
9aa744925e
Merge pull request #5030 from simon3z/nodeinfo
...
Add support for fetching node collected information
2015-03-10 14:05:41 -07:00
Daniel Smith
e1f64b2901
Merge pull request #5235 from jszczepkowski/pods-watch
...
Watch support in PodInterface.
2015-03-10 11:59:04 -07:00
Brian Grant
7aa060bae7
Merge pull request #4706 from mikedanese/PATCH
...
add PATCH verb to apiserver
2015-03-10 11:38:22 -07:00
Derek Carr
99a5ab4cfa
Merge pull request #5248 from pmorie/fix-events
...
Fix event recorder not to log events without a reference
2015-03-10 14:08:00 -04:00
Mike Danese
46ec580771
add PATCH to apiserver
2015-03-10 10:56:15 -07:00
Brian Grant
6062e14313
Merge pull request #5220 from nikhiljindal/camelCaseFieldSelectors
...
Changing v1beta3 field selectors to be camelCased
2015-03-10 09:35:03 -07:00
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