Commit Graph

1291 Commits

Author SHA1 Message Date
k8s-merge-robot
d44457ebaf Merge pull request #23903 from zhouhaibing089/https-fix
Automatic merge from submit-queue

the component status health check should check whether the scheme of backend storage url is https or not

fix https://github.com/kubernetes/kubernetes/issues/23897, when querying the component status of etcd (backend storage), the scheme of url is not checked and use `http` always, this commit aims to fix this.
2016-04-16 20:22:57 -07:00
Clayton Coleman
0f95b91f96 Move /resetMetrics to DELETE /metrics
Reduces the surface area of the API server slightly and allows
downstream components to have deleteable metrics. After this change
genericapiserver will *not* have metrics unless the caller defines it
(allows different apiserver implementations to make that choice on their
own).
2016-04-15 11:44:17 -04:00
Daniel Smith
4c539bf082 Merge pull request #23490 from wojtek-t/remove_set_from_storage_interface
Remove Set() from storage.Interface.
2016-04-13 14:22:05 -07:00
k8s-merge-robot
f5e8e7453b Merge pull request #23806 from smarterclayton/streaming_watch
Automatic merge from submit-queue

Implement a streaming serializer for watch

Changeover watch to use streaming serialization. Properly version the
watch objects. Implement simple framing for JSON and Protobuf (but not
YAML).

@wojtek-t @lavalamp
2016-04-13 05:18:17 -07:00
Chao Xu
f315ffd8b1 make default thirdparty resource preferredVersion; adding back discovery tests 2016-04-12 10:09:09 -07:00
k8s-merge-robot
acf9492cb1 Merge pull request #23660 from goltermann/vetclean
Automatic merge from submit-queue

Additional go vet fixes

Mostly:
- pass lock by value
- bad syntax for struct tag value
- example functions not formatted properly
2016-04-12 06:22:16 -07:00
James Ravn
5bb0595260 Make deserialization cache size configurable
Instead of the default 50K entries, allow users to specify more sensible
sizes for their cluster.
2016-04-12 13:42:27 +01:00
Clayton Coleman
3474911736 Implement a streaming serializer for watch
Changeover watch to use streaming serialization. Properly version the
watch objects. Implement simple framing for JSON and Protobuf (but not
YAML).
2016-04-11 11:22:05 -04:00
zhouhaibing089
597fdede5a the component status health check should check whether the scheme of backend storage url is https or not 2016-04-08 07:26:27 +08:00
goltermann
696423e044 Vet fixes, mostly pass lock by value errors. 2016-04-06 11:27:40 -07:00
Wojciech Tyczynski
53f433f019 Remove Set() from storage.Interface. 2016-04-04 17:54:18 +02:00
Brendan Burns
be6c5b332b Add third party support to kubectl 2016-03-31 10:53:32 -07:00
deads2k
e8fb35d4d8 refactor resource overrides as positive logic interface 2016-03-28 09:24:49 -04:00
goltermann
32d569d6c7 Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
k8s-merge-robot
b8e390a0f3 Merge pull request #22824 from brendandburns/enable
Auto commit by PR queue bot
2016-03-24 22:26:39 -07:00
Brendan Burns
1f5b4b8802 Address comments. 2016-03-24 15:44:31 -07:00
goltermann
34d4eaea08 Fixing several (but not all) go vet errors. Most are around string formatting, or unreachable code. 2016-03-22 17:26:50 -07:00
Brendan Burns
87a1635c93 Machine generated stuff 2016-03-22 14:41:37 -07:00
k8s-merge-robot
76acfd4b7d Merge pull request #22916 from liggitt/namespace-subresources
Auto commit by PR queue bot
2016-03-22 01:25:58 -07:00
Brendan Burns
a0fcbd1495 Enable third party resources. 2016-03-21 17:02:18 -07:00
CJ Cullen
5f3929f75d Add a SSHKey sync check to the master's healthz (when using SSHTunnels). 2016-03-17 19:14:25 -07:00
Mike Danese
e21ebbcac4 give the kubernetes service client ip session affinity 2016-03-17 09:38:22 -07:00
Jordan Liggitt
ad20045c8d Correctly identify namespace subresources in GetRequestInfo 2016-03-14 13:03:33 -04:00
k8s-merge-robot
5db0feb202 Merge pull request #22017 from caesarxuchao/fix-21955
Auto commit by PR queue bot
2016-03-10 14:37:43 -08:00
Madhusudan.C.S
fe26381c90 Support for both map-based and set-based selectors in extensions/v1beta1.Scale
Here are a list of changes along with an explanation of how they work:
1. Add a new string field called TargetSelector to the external version of
   extensions Scale type (extensions/v1beta1.Scale). This is a serialized
   version of either the map-based selector (in case of ReplicationControllers)
   or the unversioned.LabelSelector struct (in case of Deployments and
   ReplicaSets).
2. Change the selector field in the internal Scale type (extensions.Scale) to
   unversioned.LabelSelector.
3. Add conversion functions to convert from two external selector fields to a
   single internal selector field. The rules for conversion are as follows:
   i.   If the target resource that this scale targets supports LabelSelector
        (Deployments and ReplicaSets), then serialize the LabelSelector and
        store the string in the TargetSelector field in the external version
        and leave the map-based Selector field as nil.
   ii.  If the target resource only supports a map-based selector
        (ReplicationControllers), then still serialize that selector and
	store the serialized string in the TargetSelector field. Also,
	set the the Selector map field in the external Scale type.
   iii. When converting from external to internal version, parse the
        TargetSelector string into LabelSelector struct if the string isn't
	empty. If it is empty, then check if the Selector map is set and just
	assign that map to the MatchLabels component of the LabelSelector.
   iv.  When converting from internal to external version, serialize the
        LabelSelector and store it in the TargetSelector field. If only
	the MatchLabel component is set, then also copy that value to
	the Selector map field in the external version.
4. HPA now just converts the LabelSelector field to a Selector interface
   type to list the pods.
5. Scale Get and Update etcd methods for Deployments and ReplicaSets now
   return extensions.Scale instead of autoscaling.Scale.
6. Consequently, SubresourceGroupVersion override and is "autoscaling"
   enabled check is now removed from pkg/master/master.go
7. Other small changes to labels package, fuzzer and LabelSelector
   helpers to piece this all together.
8. Add unit tests to HPA targeting Deployments and ReplicaSets.
9. Add an e2e test to HPA targeting ReplicaSets.
2016-03-09 17:54:17 -08:00
k8s-merge-robot
89c9c24987 Merge pull request #21964 from caesarxuchao/fix-thirdparty-parameter
Auto commit by PR queue bot
2016-03-07 00:59:17 -08:00
k8s-merge-robot
a435537e27 Merge pull request #21966 from madhusudancs/scale-deployment-replicaset
Auto commit by PR queue bot
2016-03-04 14:40:10 -08:00
Madhusudan.C.S
fa0794098f Define etcd storage methods for replicationcontrollers/scale subresource.
Also register replicationcontrollers/scale subresource. Along with
registering the resource, also specify the cross-group override for the
subresource since Scale belongs belongs to autoscaling/v1 but
ReplicationController belongs to api/v1.
2016-03-04 11:02:37 -08:00
Madhusudan.C.S
9e99f9fa0e Register scale subresource for Deployments and ReplicaSets.
Define etcd registry methods for scale subresource in Deployments and
ReplicaSets. Register them with the API server.
2016-03-04 11:01:36 -08:00
k8s-merge-robot
d81d823ca5 Merge pull request #22393 from eparis/blunderbuss
Auto commit by PR queue bot
2016-03-02 18:51:56 -08:00
Eric Paris
5e5a823294 Move blunderbuss assignees into tree 2016-03-02 20:46:32 -05:00
Chao Xu
56bddbcae5 fix thirdparty discovery, add test 2016-02-25 14:13:28 -08:00
Chao Xu
4adb110516 adding a unit test 2016-02-25 11:09:26 -08:00
Wojciech Tyczynski
506899008f Parallelization of namespace deletion 2016-02-25 16:33:25 +01:00
Chao Xu
5b108acb38 fix ParameterCodec for thirdparty resource 2016-02-24 21:45:30 -08:00
Wojciech Tyczynski
4eadc5e97b Introduce RESTOptions to configure per-resource storage 2016-02-22 16:28:28 +01:00
k8s-merge-robot
aee2eb3977 Merge pull request #21434 from erictune/job-ga
Auto commit by PR queue bot
2016-02-22 00:12:54 -08:00
Chao Xu
39838745e5 Strip version when encoding discovery API objects at endpoints that exist since release 1.1 2016-02-19 15:05:20 -08:00
Eric Tune
da44473a38 Comment out test to fix later. 2016-02-19 11:20:58 -08:00
Eric Tune
d5f303d3d7 Fixed and added tests 2016-02-19 09:20:56 -08:00
Eric Tune
ab8cfb968f Enabled batch API group in apiserver 2016-02-19 09:20:56 -08:00
Eric Tune
98a801a37b Created batch API group and copied Job there
Modeled after on first commit (2fbc5bb) of piosz:hpa-ga (#20501).
2016-02-19 09:20:56 -08:00
k8s-merge-robot
5d7d0eea2e Merge pull request #20626 from nikhiljindal/serverIPInDiscovery
Auto commit by PR queue bot
2016-02-18 21:53:24 -08:00
k8s-merge-robot
f1cbaed60f Merge pull request #17493 from feihujiang/supportSubresourceOfServiceProxy
Auto commit by PR queue bot
2016-02-18 18:22:59 -08:00
nikhiljindal
20ce4aed0e Adding hostname to groups discovery information 2016-02-18 11:58:11 -08:00
k8s-merge-robot
5acdb92126 Merge pull request #21177 from laushinka/spelling-fixes
Auto commit by PR queue bot
2016-02-18 10:29:49 -08:00
k8s-merge-robot
17325ef6ef Merge pull request #20501 from piosz/hpa-ga
Auto commit by PR queue bot
2016-02-18 06:52:39 -08:00
feihujiang
ac9f890238 Support the subresource of service proxy 2016-02-18 15:16:05 +08:00
laushinka
7ef585be22 Spelling fixes inspired by github.com/client9/misspell 2016-02-18 06:58:05 +07:00
Madhusudan.C.S
ab1e9c200f Graduate DaemonSet to v1beta1 API, enable it by default. 2016-02-17 15:03:12 -08:00
k8s-merge-robot
0866c377e9 Merge pull request #18010 from feihujiang/supportSubresourceOfNodeProxy
Auto commit by PR queue bot
2016-02-17 08:15:50 -08:00
feihujiang
e85253916f Support the subresource of node proxy 2016-02-16 17:02:45 +08:00
George Tankersley
31463502ec Fix comment typo 2016-02-15 21:05:51 -08:00
Piotr Szczesniak
264c64ec0d Enabled autoscaling API group in apiserver 2016-02-15 21:39:00 +01:00
Piotr Szczesniak
d9705940d6 Fixed and added tests 2016-02-15 21:39:00 +01:00
Piotr Szczesniak
2fbc5bb767 Created autoscaling API group and copied HPA there 2016-02-15 21:39:00 +01:00
k8s-merge-robot
94b8554c91 Merge pull request #21033 from nikhiljindal/swaggerspecInGenericServer
Auto commit by PR queue bot
2016-02-14 11:39:56 -08:00
Janet Kuo
2874f30c05 Enable Deployments by default 2016-02-12 12:29:14 -08:00
nikhiljindal
e2bffac285 Moving installing swagger spec to generic api server 2016-02-10 18:33:47 -08:00
Madhusudan.C.S
e7a9f30936 Address review comments. 2016-02-09 15:50:01 -08:00
Madhusudan.C.S
ed7ad6dcf3 Make deployments work. 2016-02-08 21:27:49 -08:00
Paul Weil
619ccb7023 don't enable psp by default and fix comment 2016-02-08 08:56:52 -05:00
Jan Chaloupka
4389b3f0d6 Rewritte util.* -> wait.* wherever reasonable 2016-02-07 12:02:20 +01:00
Madhusudan.C.S
48c4173f5f Enable ReplicaSets in e2e tests. 2016-02-06 03:46:17 -08:00
Madhusudan.C.S
4f9b8b2bfc Link all the ReplicaSet controller boilerplate together.
1. Enable replica set in controller manager.
2. Enable replica set etcd storage in master package.
3. Add replica set support to kubectl commands.
2016-02-05 21:05:10 -08:00
Daniel Smith
60cc5d10b7 Merge pull request #20013 from spxtr/fix-ssh
Retry SSH connection for E2E log gathering.
2016-02-05 15:52:34 -08:00
Nikhil Jindal
4606d1408b Merge pull request #20532 from nikhiljindal/genericServerAPIs
Moving /apis handler to generic api server
2016-02-05 13:13:57 -08:00
Paul Weil
03261146b0 api 2016-02-05 08:45:50 -05:00
nikhiljindal
d267ab5f92 Moving /apis handler to generic server 2016-02-04 17:58:13 -08:00
Nikhil Jindal
59820827d4 Merge pull request #20513 from nikhiljindal/apiserverExampleTest
Adding test for apiserver example
2016-02-04 11:28:58 -08:00
Wojciech Tyczynski
f23034d5da Reset more metrics before scalability tests 2016-02-04 11:47:13 +01:00
Joe Finney
7a59683e41 Retry SSH connection for E2E log gathering. 2016-02-03 16:06:02 -08:00
nikhiljindal
c7beb9078c Updating methods to return error rather than using glog.Fatalf 2016-02-03 16:00:45 -08:00
k8s-merge-robot
8d8de2efb4 Merge pull request #19314 from cjcullen/tunnels
Auto commit by PR queue bot
2016-02-02 19:46:06 -08:00
Jeff Lowdermilk
caa9433234 Merge pull request #20433 from lavalamp/fix-bad-rv
Add timeout, fix potential startup hang
2016-02-02 17:27:23 -08:00
CJ Cullen
04eb90a5d4 Make tunneler hold tunnels open and healthcheck vs. reopening every 5 minutes.
Also add a test for the Update() logic.
Reordered tunnels vs. storage initialization (prevent a nil ptr panic)
2016-02-02 12:00:29 -08:00
k8s-merge-robot
c5260c8c71 Merge pull request #20145 from mqliang/quorum-read
Auto commit by PR queue bot
2016-02-02 05:50:41 -08:00
Daniel Smith
4a7d70aef1 extend fake clock 2016-02-01 15:36:15 -08:00
harry
1032067ff9 Replace runtime reference by pkg 2016-02-01 21:06:44 +08:00
Chao Xu
90b4662d8d Add services/status path, and let the service controller uses Services.UpdateStatus() 2016-01-31 12:39:45 -08:00
Janet Kuo
3396db9510 Add rollback subresource; add rollback logic to deployment controller 2016-01-30 16:00:34 -08:00
mqliang
b0e06c14e5 add a knob to enable quorum read 2016-01-30 20:32:12 +08:00
Fabio Yeon
eb2c2d1af4 Merge pull request #20111 from fabioy/fix-tmp-tests
Add temp directory creation method for tests.
2016-01-29 09:51:12 -08:00
Paul Morie
9030f16071 Move ConfigMap to main API 2016-01-28 17:07:05 -05:00
Fabio Yeon
7205a160ac Remove all instances of "/tmp" from unit tests and replace with a common
tmp directory creator. Exception is documented.
2016-01-27 16:11:22 -08:00
Clayton Coleman
4d127dc969 Initialize API servers with negotiated serializers
Pass down into the server initialization the necessary interface for
handling client/server content type negotiation. Add integration tests
for the negotiation.
2016-01-22 01:10:22 -05:00
nikhiljindal
2ad642d370 Merge registered and latest and move to apimachinery 2016-01-21 14:42:21 -08:00
Alex Mohr
d2d349bc84 Merge pull request #19334 from resouer/network
Networking should be used to hold network related pkgs
2016-01-21 10:26:13 -08:00
deads2k
14396fc464 add subject access review types 2016-01-20 08:24:15 -05:00
Harry Zhang
936a11e775 Use networking to hold network related pkgs
Change names of unclear methods

Use net as pkg name for short
2016-01-15 13:46:16 +08:00
k8s-merge-robot
c059dfdb9b Merge pull request #18712 from pmorie/config-kubectl
Auto commit by PR queue bot
2016-01-13 13:51:29 -08:00
David Oppenheimer
8ac484793d Comment out calls to httptest.Server.Close() to work around
https://github.com/golang/go/issues/12262 . See #19254 for
more details. This change should be reverted when we upgrade
to Go 1.6.
2016-01-11 23:02:11 -08:00
Paul Morie
9c18067e60 Add kubectl support for ConfigMap 2016-01-06 09:03:39 -05:00
nikhiljindal
87ce093c77 Moving API registration logic to generic api server 2015-12-30 14:22:14 -08:00
Chao Xu
2b5b708b70 Refactor the API registration and installation 2015-12-23 22:44:25 -08:00
k8s-merge-robot
44fc4d3f34 Merge pull request #18484 from brendandburns/3rdparty5
Auto commit by PR queue bot
2015-12-19 10:12:35 -08:00
Brendan Burns
e594407ab5 Add dynamic APIs to the list of discoverable APIs 2015-12-18 14:03:43 -08:00
deads2k
9fda7f1812 update StatusDetails to handle Groups 2015-12-17 09:14:12 -05:00
nikhiljindal
2d952aaa87 Extracting APIServer machinery code into a library 2015-12-16 13:54:23 -08:00
k8s-merge-robot
6716290903 Merge pull request #18388 from nikhiljindal/clusterName
Auto commit by PR queue bot
2015-12-16 03:50:11 -08:00
deads2k
d0aaf13920 use constants for group names 2015-12-14 10:04:10 -05:00
k8s-merge-robot
c458cd7bb7 Merge pull request #18379 from deads2k/gv-newobject
Auto commit by PR queue bot
2015-12-13 13:33:16 -08:00
nikhiljindal
724b098855 Deleting unused master.ClusterName param 2015-12-11 13:39:19 -08:00
Timothy St. Clair
a428246960 Abstract the error handling for the storage layer to eliminate the
direct etcd dependency.
2015-12-10 08:06:19 -06:00
deads2k
519b4e80d1 update NewObject for groupversionkind 2015-12-09 08:13:15 -05:00
deads2k
2ee3dfe415 update testapi to eliminate redundant fields 2015-12-07 15:54:26 -05:00
k8s-merge-robot
9bd5995841 Merge pull request #18158 from gmarek/master
Auto commit by PR queue bot
2015-12-04 02:14:38 -08:00
gmarek
38b9132e3f Remove unused KubeletStatusPort from ports.go 2015-12-03 16:00:49 +01:00
nikhiljindal
5c556baa2f Removing duplicate NewEtcdStorage code 2015-12-03 01:37:44 -08:00
k8s-merge-robot
689586c6ae Merge pull request #16153 from gmarek/use_api_ports
Auto commit by PR queue bot
2015-12-02 05:57:49 -08:00
gmarek
459131fd92 Use KubeletPort reported in NodeStatus instead of cluster-wide master config, take 2. 2015-12-02 13:38:17 +01:00
k8s-merge-robot
60925e67fe Merge pull request #17920 from abutcher/check-endpoints
Auto commit by PR queue bot
2015-12-02 01:35:00 -08:00
Andrew Butcher
101a9927e4 Do not update kubernetes endpoints when endpoint address count is less than or equal to master count.
checkEndpointSubsetFormat ensures that,
1. the current master's IP is in the list of addresses
2. the number of IPs in the list exactly matches the master count

This is problematic while masters are in the process of starting
because it causes frequent updates to the kubernetes endpoints until
all masters have started and added themselves to the list.

checkEndpointSubsetFormat should report success if the current
master's IP is found and the count of addresses is less than or equal
to the expected count.
2015-12-01 14:31:22 -05:00
k8s-merge-robot
a836b1e261 Merge pull request #17326 from caesarxuchao/grooupVersion-lastest
Auto commit by PR queue bot
2015-12-01 05:05:40 -08:00
Chao Xu
6e192760e3 refactoring latest.go GroupVersion;
clean up latest.go GroupVersions;
remove latest.GroupMeta.Group;
remove latest.GroupMeta.Version.
2015-11-30 11:30:21 -08:00
harry
477da92002 Move hostIP detection from master to server
Add PublicAddress in test files

Move valid public addr into util
2015-11-30 16:17:37 +08:00
Marek Grabowski
62009344cc Merge pull request #17761 from gmarek/flannel
Rebase of @bprashant Flannel out of the box
2015-11-25 16:04:35 +01:00
Prashanth Balasubramanian
321bc73264 Flannel server in static pod with private etcd. 2015-11-25 09:42:59 +01:00
Tim St. Clair
20ead45af9 Move etcd_util.go to separate package 2015-11-23 11:32:50 -08:00
Wojciech Tyczynski
846356d437 Remove tools.EtcdClient reference from master_test 2015-11-20 16:59:21 +01:00
k8s-merge-robot
ce492e7a28 Merge pull request #17378 from wojtek-t/remove_fake_client_from_master_test_2
Auto commit by PR queue bot
2015-11-19 08:18:14 -08:00
Wojciech Tyczynski
514c41c157 Delete usage of FakeEtcdClient from master_test.go 2015-11-19 10:05:48 +01:00
Abhi Shah
7033e423aa Merge pull request #17361 from zhengguoyong/del_repeat_import_packagge
Del repeat imported package
2015-11-18 14:58:22 -08:00
k8s-merge-robot
0798915490 Merge pull request #17261 from nikhiljindal/masterClean
Auto commit by PR queue bot
2015-11-17 08:16:18 -08:00
Wojciech Tyczynski
a06ecebc71 Delete some usage of FakeEtcdClient from master_test.go 2015-11-17 15:42:29 +01:00
k8s-merge-robot
5e20dcfd6f Merge pull request #17227 from deads2k/gv-apigv
Auto commit by PR queue bot
2015-11-17 01:53:17 -08:00
k8s-merge-robot
7780c1718c Merge pull request #17093 from Pendoragon/master
Auto commit by PR queue bot
2015-11-17 00:17:41 -08:00
zhengguoyong
1c07a56299 Del repeat imported package 2015-11-17 16:13:11 +08:00
Tim Hockin
ba383bcfeb Refactor IntOrString into a new pkg
pkg/util/intstr is a cleaner encapsulation for this type and supporting
functions.  No behavioral change.
2015-11-16 10:57:52 -08:00
deads2k
bf983e942c use GroupVersion in APIGroupVersion for api installer 2015-11-16 07:42:00 -05:00
nikhiljindal
e31a08bbc1 Remove unused NodeRegexp var from master 2015-11-13 15:56:50 -08:00
David Eads
486103d887 Revert "use GroupVersion in APIGroupVersion for api installer" 2015-11-13 12:55:08 -05:00
deads2k
3c725f17ea use GroupVersion in APIGroupVersion for api installer 2015-11-13 09:00:04 -05:00
Wojciech Tyczynski
a5a8717539 Pass versioner to cacher. 2015-11-13 08:35:28 +01:00
Wojciech Tyczynski
3df5d1dbc3 Move storage-related dirs under pkg/storage. 2015-11-12 19:49:32 +01:00
Pengcheng Tang
6d94dd1a05 Change order of CORS and authenticatedHandler for secureHandler. 2015-11-12 09:55:36 +08:00
ZhuPeng
b94b1efdb0 Avoid log wrong information until got PublicAddress 2015-11-10 10:45:51 +08:00
Chao Xu
15e6ca5ac5 rename to GroupVersion and rename the one in type.go to GroupVersionForDiscovery 2015-11-05 14:52:58 -08:00
k8s-merge-robot
2842d9476b Merge pull request #16496 from wojtek-t/switch_cacher_for_other_resources
Auto commit by PR queue bot
2015-11-04 03:01:24 -08:00
Nikhil Jindal
34cbe48736 Merge pull request #16690 from nikhiljindal/apiDeclNotFound
Fixing missing swagger spec for apis/extensions
2015-11-03 14:36:31 -08:00
Wojciech Tyczynski
030a272db5 Enable cacher for all resources. 2015-11-03 11:55:37 +01:00
k8s-merge-robot
b79379516f Merge pull request #16584 from wojtek-t/refactor_use_cacher
Auto commit by PR queue bot
2015-11-03 01:10:13 -08:00
nikhiljindal
7612bded3e Removing an erroneous / 2015-11-02 14:18:57 -08:00
Wojciech Tyczynski
8f385c563f Refactor code for creating Cacher. 2015-11-02 20:56:46 +01:00
feihujiang
3603b14977 Move service strategy to registry/service package 2015-11-02 19:56:03 +08:00
Mike Danese
9bdb860eeb add apigroup installer and tests 2015-10-31 11:42:38 -07:00
k8s-merge-robot
cc53619372 Merge pull request #15791 from abutcher/set-service
Auto commit by PR queue bot
2015-10-30 06:55:16 -07:00
Andrew Butcher
0c4aafaf1e Update master service ports and type via controller. 2015-10-29 10:56:46 -04:00
Wojciech Tyczynski
9c53f301f1 Merge selectors with ListOptions. 2015-10-29 15:42:57 +01:00
k8s-merge-robot
d5be3635e5 Merge pull request #16273 from wojtek-t/list_options_in_api
Auto commit by PR queue bot
2015-10-29 01:57:29 -07:00
Wojciech Tyczynski
aa30e38183 Pass resource version to storage List operation. 2015-10-27 10:03:58 +01:00
Mike Danese
8acf01d620 add status subresource for deployment 2015-10-26 00:12:58 -07:00
Janet Kuo
54b743bc05 Change resource "ingress" to "ingresses" in URL path and kubectl 2015-10-25 16:54:25 -07:00
Saad Ali
ebf3ee3fb2 Merge pull request #16035 from deads2k/typo
fix horizonal typo
2015-10-23 12:09:11 -07:00
Saad Ali
76c5e0e553 Revert "Use KubeletPort reported in NodeStatus instead of cluster-wide master config" 2015-10-22 21:25:38 -07:00
k8s-merge-robot
a6b8e112ac Merge pull request #12919 from gmarek/use_api_ports
Auto commit by PR queue bot
2015-10-22 19:53:41 -07:00
Filip Grzadkowski
52136bdb68 Merge pull request #15958 from deads2k/add-is-api-url
add nonResourceURL detection
2015-10-22 14:47:54 +02:00
deads2k
b74aa0145b fix horizonal typo 2015-10-21 13:32:01 -04:00
gmarek
6d6cd8e46a Use KubeletPort reporeted in NodeStatus instead of cluster-wide master config. 2015-10-21 17:19:31 +02:00
deads2k
6fbb3f4b6e add nonResourceURL detection 2015-10-20 16:23:30 -04:00
Steve Milner
8da2d4002f Fixes remaining imports per #15319 2015-10-20 07:13:13 -04:00
k8s-merge-robot
ff7ce44e74 Merge pull request #14517 from jayunit100/reorder
Auto commit by PR queue bot
2015-10-18 09:04:23 -07:00
Piotr Szczesniak
52d8527761 Migrate hpa e2e tests to the new API
Fixed the issue with enabling HPA
2015-10-16 11:06:47 +02:00
nikhiljindal
7bcc4a6755 Allowing runtimeConfig to support enabling/disabling specific extension resources 2015-10-15 14:24:22 -07:00
derekwaynecarr
eae56c3b2d Add status subresource to Ingress 2015-10-14 14:36:29 -04:00
Andrew Butcher
a2c97c7b0e Ports could be in reverse order or otherwise. 2015-10-13 07:42:43 -04:00
Andrew Butcher
efd8e3c9c7 Additional service ports config for master service. 2015-10-13 07:42:40 -04:00
k8s-merge-robot
2dec0826f7 Merge pull request #15351 from caesarxuchao/fix-14584-1
Auto commit by PR queue bot
2015-10-13 02:19:43 -07:00
Dawn Chen
0901e5050d Merge pull request #15371 from timothysc/etcd-contexts
New etcd client modifications part 1 (context support)
2015-10-12 16:04:13 -07:00
Dawn Chen
782102d437 Merge pull request #15224 from liggitt/proxy_https
Allow specifying scheme when proxying
2015-10-12 14:39:21 -07:00
Chao Xu
7817c2312c fix rebase 2015-10-12 13:48:14 -07:00
Chao Xu
cbeb307a60 run grep-sed 2015-10-12 13:34:07 -07:00
Chao Xu
29d3351b69 run goimports 2015-10-12 13:33:13 -07:00
Chao Xu
e3d984be27 run grep-sed 2015-10-12 13:33:13 -07:00
derekwaynecarr
3c012db30f Add status subresource to HorizontalPodAutoscaler 2015-10-12 11:27:56 -04:00
Jordan Liggitt
1043126135 Refactor SSH tunneling, fix proxy transport TLS/Dial extraction 2015-10-12 11:17:01 -04:00
Timothy St. Clair
2a2a2d79ff New etcd client modifications part 1 (context support)
This commit plumbs contexts which are needed for the new client.
2015-10-12 08:45:49 -05:00
Chao Xu
7c9f4cc42f experimental. -> extensions. 2015-10-09 15:49:10 -07:00
Chao Xu
f3caff2a79 testapi.Experimental -> testapi.Extensions 2015-10-09 15:15:35 -07:00
Chao Xu
80f213c376 "experimental" -> "extensions" 2015-10-09 15:14:03 -07:00
Chao Xu
67f316dd19 apis/experimental->apis/extensions 2015-10-09 15:04:41 -07:00
derekwaynecarr
544b453e31 Add replication controller status subresource 2015-10-07 14:39:33 -04:00
jayvyas
be2a2ec3cd NodePort apiserver option for exposing KubernetesMasterService NodePort on startup. 2015-10-05 20:34:25 -04:00
Wojciech Tyczynski
0f1cbe37a4 Events in separate etcd 2015-10-05 10:54:24 +02:00
k8s-merge-robot
e330b1197e Merge pull request #14459 from bprashanth/l7_ingress_resource_refactor
Auto commit by PR queue bot
2015-10-02 10:20:48 -07:00
k8s-merge-robot
f5adbb7e12 Merge pull request #14926 from caesarxuchao/fix-discovery-1
Auto commit by PR queue bot
2015-10-02 06:39:44 -07:00
Chao Xu
4927cec3be fix groups exposes at apis/ 2015-10-01 18:32:42 -07:00
Chao Xu
f4ff0f7683 fix thirdparty API, now the config file of thirdpartyresource also need to group/version instead of version 2015-10-01 12:30:51 -07:00
deads2k
df870cf36a remove Kind from APIRequestInfo 2015-09-30 09:46:22 -04:00
deads2k
dc8d0de70b update APIRequestInfo for APIGroup 2015-09-30 09:45:10 -04:00
Prashanth Balasubramanian
16921f961a Ingress registry 2015-09-29 18:51:24 -07:00
Jerzy Szczepkowski
0fd5a74450 Fixed update of scale sub-resource for experimental RC.
Fixed update of scale sub-resource for experimental RC. Resolves #14656.
2015-09-29 10:55:29 +02:00
derekwaynecarr
aead9d3291 DaemonSets adds a Status subresource 2015-09-25 12:13:54 -04:00
jayunit100
a2f9957745 MasterCount explain logic around reorder+wraparound 2015-09-25 10:10:54 -04:00
Chao Xu
3473212ea5 remove thirdParty API from api/v1/ and api/ 2015-09-24 16:31:00 -07:00
Chao Xu
ae1293418b move experimental/v1 to experimental/v1alpha1;
use "group/version" in many places where used to expect "version" only.
2015-09-24 15:32:11 -07:00
Eric Tune
95a44be2ef Job status updates.
Added status REST storage.
Added validation for Status Updates.
Changed job controller to update status rather than just job
(which ignores status updates).
2015-09-22 11:39:35 -07:00
k8s-merge-robot
98231d1f68 Merge pull request #14171 from jszczepkowski/deployment-scale
Auto commit by PR queue bot
2015-09-22 01:37:41 -07:00
Chao Xu
f1de364a0e Make latest.AllGroups public; fix thirdPartyResourceDataCreator.New 2015-09-21 22:32:24 -07:00
Brendan Burns
fb9efac68c Complete initial third party API support in the master 2015-09-21 15:56:36 -07:00
Chao Xu
1278771b34 let apiserver support api discovery 2015-09-21 12:20:24 -07:00
Jerzy Szczepkowski
53dab136ed Implemented Scale sub-resource for Deployment.
Implemented Scale sub-resource for Deployment.
2015-09-18 13:55:26 +02:00
Kris
f4ad00d9ae Moving Status object to a common package 2015-09-17 14:09:53 -07:00
Alex Mohr
f893245f4e Merge pull request #14103 from feihujiang/fixWrongPathOfDocument
Fixes the wrong path of documents
2015-09-17 10:27:41 -07:00
k8s-merge-robot
62d8cfb615 Merge pull request #13765 from brendandburns/schema-api-5
Auto commit by PR queue bot
2015-09-17 09:32:04 -07:00
feihujiang
51f59f3c78 Fix the wrong path of document 2015-09-17 20:38:08 +08:00
Chao Xu
9bef5ff99d register experimental apis as apis/experimental/..
mark --api-version as deprecated
2015-09-15 11:25:01 -07:00
Brendan Burns
8d0016b542 Address comments. 2015-09-14 16:19:03 -07:00
Brendan Burns
0a3aa2242b Add a third party controller that creates/deletes third party apis 2015-09-14 14:21:14 -07:00
Chao Xu
f5023929d8 fix broken files after rebase 2015-09-12 15:45:12 -07:00
Chao Xu
c733124920 address lavalamp's comments 2015-09-11 17:34:32 -07:00
Chao Xu
0d2110c3f4 fix boilerplate 2015-09-11 17:33:22 -07:00
Chao Xu
0b6fd8c5c4 fixing tests 2015-09-11 17:33:22 -07:00
Chao Xu
190ca2ebf2 add import_known_versions.go 2015-09-11 17:32:23 -07:00
Chao Xu
64bf839e9f refactor tests to use testapi rather than latest directly 2015-09-11 17:32:23 -07:00
Chao Xu
dd6c121d7f massive changes 2015-09-11 17:31:47 -07:00
Chao Xu
e400a15f84 make a central latest package 2015-09-11 17:29:37 -07:00
Daniel Smith
ccd9e3e247 Run all automated tools 2015-09-11 16:11:08 -07:00
Daniel Smith
4c2adabf42 move; sed replace 2015-09-11 16:03:22 -07:00
k8s-merge-robot
bafa7627db Merge pull request #12910 from soltysh/job_controller
Auto commit by PR queue bot
2015-09-11 15:52:37 -07:00
Maciej Szulik
e55c59e8c2 New Job resource 2015-09-11 21:36:20 +02:00
Steve Milner
66dff577f4 test: improved master coverage. 2015-09-11 09:10:05 -04:00
tummychow
78ce5da988 Move util.StringSet into its own package
A lot of packages use StringSet, but they don't use anything else from
the util package. Moving StringSet into another package will shrink
their dependency trees significantly.
2015-09-10 12:04:15 -07:00
k8s-merge-robot
1313e3b14e Merge pull request #13700 from mikedanese/daemon_set
Auto commit by PR queue bot
2015-09-10 10:15:45 -07:00
Mike Danese
bf881f187e rename expapi.Daemon to expapi.DaemonSet 2015-09-10 08:34:26 -07:00
Wojciech Tyczynski
cd1ac360de Rename "minion" to "node" in few places. 2015-09-09 16:18:23 +02:00
k8s-merge-robot
0a7921e988 Merge pull request #13538 from brendandburns/thirdparty
Auto commit by PR queue bot
2015-09-08 23:17:56 -07:00
Brendan Burns
61f272c8cd Update the third party data codec to automatically include everything
in api.ObjectMeta.  Add more tests.
2015-09-08 21:13:06 -07:00
Piotr Szczesniak
48b9c365c7 Merge pull request #13308 from timothysc/watch-cache-disable
Plumb through configuration option to disable watch cache
2015-09-04 13:40:46 +02:00
Brendan Burns
6aa7ce2689 addressed comments. 2015-09-01 12:00:56 -07:00
Brendan Burns
d993b8891d Addressed changes 2015-08-31 21:13:37 -07:00
Brendan Burns
855c7cedcc Address comments. 2015-08-31 21:13:37 -07:00
Brendan Burns
b196d0f84b Add support for installing custom object APIs 2015-08-31 21:13:36 -07:00
Brendan Burns
7bfc8b5f37 Add dynamic APIs 2015-08-31 21:13:07 -07:00
k8s-merge-robot
044e4854e1 Merge pull request #13347 from nikhiljindal/expDeployment
Auto commit by PR queue bot
2015-08-31 14:31:23 -07:00
Jordan Liggitt
b5e8f7aa41 Recover panics in finishRequest, write correct API response 2015-08-31 14:55:18 -04:00
nikhiljindal
13ecd8a72c Adding deployment registry and exposing deployments in master 2015-08-31 10:47:04 -07:00
Timothy St. Clair
2145371c45 Plumb through configuration option to disable watch cache
because we are seeing anomolies on our cluster.
2015-08-28 12:36:40 -05:00
Mike Danese
bee3fd02e4 enable daemon controller in the experimental api 2015-08-27 11:47:35 -07:00
Wojciech Tyczynski
c0aba1dc8a Reenable watch in apiserver 2015-08-26 10:39:01 +02:00
Wojciech Tyczynski
f0b8749450 Revert "Reenable Cacher" 2015-08-25 08:06:49 +02:00
Wojciech Tyczynski
102b618ce3 Reenable Cacher. 2015-08-24 13:07:10 +02:00
Brendan Burns
5d664892f2 Add a storage implementation for thirdpartyresources. 2015-08-21 17:21:40 -07:00
Wojciech Tyczynski
4e76ed31aa Switch off cacher 2015-08-21 15:28:28 +02:00
Wojciech Tyczynski
ec6556987e Switch on Cacher for pods, endpoints and nodes. 2015-08-21 09:24:49 +02:00
Wojciech Tyczynski
5931cc74cc Unification refactoring to pkg/registry 2015-08-20 11:17:23 +02:00
Tim Hockin
86f4535871 Check loopback and link-local multicast endpoints
Previously we just disallowed link-local (unicast).  This disallows loopback
and link-local multicast.
2015-08-18 21:50:27 -07:00
Kris Rousey
ae6c64d9bb Moving everyone to unversioned client 2015-08-18 10:23:03 -07:00
Wojciech Tyczynski
56fb29a83a Merge pull request #12344 from jszczepkowski/hpa-api
Added HorizontalPodAutoscaler object to experimental API.
2015-08-13 10:33:31 +02:00
Wojciech Tyczynski
5de0f11b1d Unify events registry to be generic. 2015-08-12 11:23:07 +02:00
Jerzy Szczepkowski
baa1612241 Added HorizontalPodAutoscaler object to experimental API.
Added HorizontalPodAutoscaler object to experimental API. Related to #12087.
2015-08-12 11:03:21 +02:00
Jerzy Szczepkowski
84af5594b3 Cleanup: "scaler" -> "scale".
Cosmetic cleanup: "scaler" replaced with "scale" (the proper name for sub-resource).
2015-08-12 09:14:05 +02:00
Kris Rousey
565189f5b8 Correcting all go vet errors 2015-08-11 13:55:37 -07:00
Wojciech Tyczynski
5ea99310f1 Unify limitrange registry to be generic. 2015-08-11 09:06:44 +02:00
Alex Robinson
42e12f1c5f Merge pull request #12340 from wojtek-t/rewrite_service_etcd
Refactor "service" registry to use standard REST storage (and generic etcd)
2015-08-10 15:38:50 -07:00
Marek Grabowski
5f9cefc1d8 Merge pull request #12441 from vlajos/typofixes-vlajos-20150807
typofix - https://github.com/vlajos/misspell_fixer
2015-08-10 16:33:52 +02:00
Marek Grabowski
87250d075f Merge pull request #12217 from mwielgus/exp_scale
Experimental Scale subresource
2015-08-10 16:32:59 +02:00
Wojciech Tyczynski
79125f460c Services using standard REST storage 2015-08-10 13:27:44 +02:00
Wojciech Tyczynski
d11ab96446 Extract non-storage operations from service etcd 2015-08-10 13:27:44 +02:00
Veres Lajos
9f77e49109 typofix - https://github.com/vlajos/misspell_fixer 2015-08-08 22:31:48 +01:00
Marcin Wielgus
91584c6b3b Experimental Scale subresource 2015-08-07 12:00:42 +02:00
David Walter
792fc2269b change underscores to dashes to match the command line argument 2015-08-06 22:13:44 -05:00
Eric Paris
7cbb52ce04 Use the pflag StringSlice instead of implementing it ourselves
Saves code and makes our code easier to read because we just use normal
[]string instead of custom type.
2015-08-06 19:16:13 -04:00
Wojciech Tyczynski
20e84d2eb1 Remove unused members 2015-08-06 09:00:42 +02:00
Mike Danese
17defc7383 run gofmt on everything we touched 2015-08-05 17:52:56 -07:00
Mike Danese
8e33cbfa28 rewrite go imports 2015-08-05 17:30:03 -07:00
Mike Danese
a23ee556ad Merge pull request #11999 from brendandburns/attach2
Add support for attach to kubectl
2015-07-31 12:51:08 -07:00
Muhammed Uluyol
58a875ac2c Add (stopgap) support for an experimental API prefix. 2015-07-30 18:14:29 -07:00
Brendan Burns
e8e756a719 Add pod/attach to the APIServer. 2015-07-30 10:55:53 -07:00
Wojciech Tyczynski
3cbbe72f9f Move etcd storage to pkg/storage/etcd 2015-07-30 15:42:06 +02:00
Wojciech Tyczynski
99d6b0e9f4 Rename storage interfaces 2015-07-30 10:34:57 +02:00
Wojciech Tyczynski
d17985f1ad Move StorageInterface to pkg/storage. 2015-07-30 09:32:04 +02:00
Chi Vinh Le
d91932f0b7 SSH tunnels fallback to LegacyHostIP 2015-07-28 10:10:48 +02:00
Wojciech Tyczynski
9d943df397 Private EtcdHelper 2015-07-27 09:20:13 +02:00
Tim Hockin
1c3233a1d4 Remove v1beta3 2015-07-23 17:21:27 -07:00
Vish Kannan
136d53466a Merge pull request #10892 from nikhiljindal/beta1
Removing references to pre v1beta3 apis in code
2015-07-23 17:05:43 -07:00
Wojciech Tyczynski
ee92aa3897 Prepare for extracting EtcdHelper interface 2015-07-23 09:37:39 +02:00
Brendan Burns
25d3834b74 Add monitoring and healthz based on tunnel health. 2015-07-14 14:37:38 -07:00
nikhiljindal
c465a50891 Stop exposing v1beta3 by default 2015-07-08 15:27:41 -07:00
nikhiljindal
fc4da6844e removing references to pre v1beta3 apis 2015-07-08 13:51:43 -07:00
Eric Paris
7a29af4d2c Add Subject Alt Names to self signed apiserver certs
A cert from GCE shows:
- IP Address:23.236.49.122
- IP Address:10.0.0.1
- DNS:kubernetes,
- DNS:kubernetes.default
- DNS:kubernetes.default.svc
- DNS:kubernetes.default.svc.cluster.local
- DNS:e2e-test-zml-master

A similarly configured self signed cert shows:
- IP Address:23.236.49.122
- IP Address:10.0.0.1
- DNS:kubernetes
- DNS:kubernetes.default
- DNS:kubernetes.default.svc

So we are missing the fqdn kubernetes.default.svc.cluster.local. The
apiserver does not even know the fqdn! it's defined entirely by the
kubelet! We also do not have the cluster name certificate. This may be
--cluster-name= argument to the apiserver but will take a bit more
research.
2015-07-01 17:05:17 -04:00
CJ Cullen
ea2d617944 Don't hold lock while opening new sshTunnels. 2015-06-29 16:16:25 -07:00
Maxwell Forbes
712f303350 Merge pull request #9736 from sdminonne/bug_fix2
To add validation for service ports when defined as string
2015-06-25 19:37:04 -07:00
Brendan Burns
f4e97be78e Switch to using the official etcd health check. 2015-06-24 10:18:39 -07:00
Wojciech Tyczynski
23d405ad86 Expose /resetMetrics handle in apiserver 2015-06-23 11:12:45 +02:00
Salvatore Dario Minonne
4b13faa346 To add validation for service ports when defined as string (fixing issue #9734) 2015-06-22 17:21:51 +02:00
Filip Grzadkowski
4c0c7dd879 Fix intializing IP/Port allocators when etcd is not reachable. 2015-06-19 21:20:52 +02:00
Satnam Singh
d8e5225144 Merge pull request #10069 from lavalamp/sshLockingFix
fix locking around ssh tunnels
2015-06-18 17:50:06 -07:00
Daniel Smith
4126622388 fix locking around ssh tunnels 2015-06-18 16:52:10 -07:00
Satnam Singh
3e7799d9a8 Merge pull request #9845 from liggitt/kubernetes_service_uid
Apply BeforeCreate logic to kubernetes service
2015-06-18 16:28:49 -07:00
Satnam Singh
28197e07d6 Merge pull request #9841 from smarterclayton/fix_apiserver_abstractions
Cleaning up apiserver method signatures
2015-06-18 15:36:52 -07:00
Clayton Coleman
debd42a07d Cleaning up apiserver method signatures
A lot of the changes in apiserver could have been represented more
cleanly - this returns the signatures to their older behavior (and
unbreaks OpenShift).
2015-06-18 15:13:41 -04:00
Satnam Singh
798739f013 Merge pull request #10006 from brendandburns/ssh
Truncate SSH usernames to 32 chars.
2015-06-18 11:44:26 -07:00
Brendan Burns
075c075b9e Truncate SSH usernames to 32 chars. 2015-06-17 23:10:32 -07:00
CJ Cullen
15596ede41 Make AddSSHKeys a controller loop. Make sure master's always initializes m.tunnels. 2015-06-17 17:46:27 -07:00
Jordan Liggitt
e869d5c6fc Apply BeforeCreate logic to kubernetes service 2015-06-16 21:08:42 -04:00
CJ Cullen
48f672af92 Change SSHTunnelList to struct to make Open() semantics better. 2015-06-16 10:36:38 -07:00
CJ Cullen
66fb8ccb02 Add ssh tunnel-open metrics 2015-06-15 17:28:54 -07:00
CJ Cullen
faa9313eea Fix several potential crashes in sshtunnel open/close code. 2015-06-15 14:38:37 -07:00
Justin Santa Barbara
6f3879e3bb Actually pass down ServiceNodePortRange so it is used
Also fix default range to match what we've documented (off-by-one)

Fix #9318
2015-06-08 18:03:42 -04:00
CJ Cullen
9ab329827a Change sshproxy to poll registry for nodes every 10 seconds (reduces window where closed tunnels from scaling down may exist). 2015-06-05 15:24:17 -07:00
CJ Cullen
cb317604ab Some refactoring. Only selectively use ssh proxy.
Add NetworkName to gce.Config.
Add locking to uses of master.tunnels.
2015-06-05 14:55:16 -07:00
CJ Cullen
1ae8801387 Fix transport creation logic.
Refactor loadTunnels to allow one path for load, another for refresh.
Make SSHTunnelList.Close sleep for a minute before actually closing each tunnel.
2015-06-05 14:55:16 -07:00
Brendan Burns
7ea533d871 Add the SSHTunnel transport to the kubelet client. 2015-06-05 14:55:15 -07:00
CJ Cullen
de9a5f43bc Specify sshUser, sshKeyfile in kube-apiserver manifest.
Trim space on ssh key so GCE doesn't treat it as 2 lines.
A couple other minor fixes.
2015-06-05 14:55:15 -07:00
Brendan Burns
5115fd5703 Add key generation. 2015-06-05 14:55:15 -07:00
Brendan Burns
30a89968a4 Initial proxy tunnelling. 2015-06-05 14:54:20 -07:00
Quinton Hoole
521446503a Merge pull request #9269 from caesarxuchao/make-v1-enabled-by-default
Make v1 enabled by default
2015-06-04 13:29:48 -07:00
Chao Xu
ef61b031f5 make v1 enabled by default 2015-06-04 11:37:44 -07:00
Chao Xu
c2e21fe5d7 use c.EtcdHelper in master.go 2015-06-04 09:39:05 -07:00
Daniel Smith
1690617ee6 remove ro service 2015-06-03 16:45:54 -07:00
Daniel Smith
3f454b7599 remove ro refs from more places 2015-06-03 15:41:09 -07:00
Prashanth Balasubramanian
0162529ea5 Default minRequestTimeout to 1800s 2015-06-03 08:47:45 -07:00
Prashanth Balasubramanian
448867073d Pipe minRequestTimeout as an arg to the apiserver 2015-06-03 08:44:14 -07:00
CJ Cullen
934c553c04 Clarify description/usage of --advertise-address, Master.PublicAddress 2015-06-02 15:23:32 -07:00
CJ Cullen
085a48a70e Add an advertise-address flag. This allows the address that the apiserver binds
to (possibly 0.0.0.0) to be different than the address on which members of the cluster
can reach the apiserver (possibly not a local interface).
2015-06-02 14:33:15 -07:00
Kris
f4e2c738f6 Delete deprecated API versions
pkg/service:

There were a couple of references here just as a reminder to change the
behavior of findPort. As of v1beta3, TargetPort was always defaulted, so
we could remove findDefaultPort and related tests.

pkg/apiserver:

The tests were using versioned API codecs for some of their encoding
tests. Necessary API types had to be written and registered with the
fake versioned codecs.

pkg/kubectl:

Some tests were converted to current versions where it made sense.
2015-05-29 17:17:35 -07:00
Tim Hockin
4318ca5a8b Rename 'portal IP' to 'cluster IP' most everywhere
This covers obvious transforms, but not --portal_net, $PORTAL_NET and
similar.
2015-05-28 16:10:44 -07:00
CJ Cullen
36d54b2094 Remove /Validate endpoint 2015-05-26 10:49:18 -07:00
Justin Santa Barbara
9255770068 Fix a few occurences of old language (e.g. visibility -> ServiceType) 2015-05-22 19:14:28 -04:00
Justin Santa Barbara
3bb2fe2425 Create port allocator, based on IP allocator mechanism
Including some refactoring of IP allocator
2015-05-22 19:14:28 -04:00
Tim Hockin
a548d542db Rename AffinityType to ServiceAffinity 2015-05-18 17:21:30 -07:00
nikhiljindal
fa9f864782 Adding a script to update etcd objects 2015-05-15 16:20:35 -07:00
Nikhil Jindal
d75bd8bf2a Merge pull request #7101 from liggitt/service_account
ServiceAccounts
2015-05-12 10:23:41 -07:00
Derek Carr
c1158fa696 Merge pull request #7969 from smarterclayton/rest_fixes
Fixes to apiserver for subresources and naming
2015-05-12 10:57:34 -04:00
Nikhil Jindal
3d31883829 Merge pull request #8083 from brendandburns/kubectl
Add a flag to disable legacy APIs
2015-05-11 17:35:28 -07:00
Clayton Coleman
0617951ead Public read only port is incorrect in master 2015-05-11 19:20:38 -04:00
Brendan Burns
d8f48290e9 Add a flag to disable legacy APIs 2015-05-11 16:09:25 -07:00
Jordan Liggitt
53d55f4192 Add ServiceAccount API type, client 2015-05-11 17:18:05 -04:00
Clayton Coleman
84d1f19016 Subresources should be in their parent rest scope
A subresource like "Binding" does not necessarily have
to have a namespace.  The RESTScope of a subresource
should always be its parent resource.
2015-05-11 15:51:05 -04:00
Clayton Coleman
5bcb96dae1 Separate out the master's control loops
These are "Bootstrap Controllers" as distinct from
the controllers in the controller-manager binary - they
are necessary for the cluster to start running.
2015-05-08 16:04:03 -04:00
Clayton Coleman
e200d5a317 Make PortalIP alloc HA
* Add an allocator which saves state in etcd
* Perform PortalIP allocation check on startup and periodically afterwards

Also expose methods in master for downstream components to handle IP allocation
/ master registration themselves.
2015-05-08 13:34:16 -04:00
Quinton Hoole
8a4a39d9b4 Merge pull request #7273 from lavalamp/fix7
fix master service endpoint system for multiple masters
2015-05-05 11:59:30 -07:00
Wojciech Tyczynski
bd3d853242 Merge pull request #7737 from lavalamp/fixTimeAfter
Reduce usage of time.After
2015-05-05 09:28:07 +02:00
Daniel Smith
a41a57cfe1 fix master service endpoint system for multiple masters 2015-05-04 22:55:51 -07:00
Fabio Yeon
1709cf0dbb Remove node status from "componentstatuses" call.
The legacy "/validate" behavior remains unchanged.
2015-05-04 14:34:20 -07:00
Daniel Smith
16a6fb8ef7 Replace calls to time.After with time.NewTimer for explicit stopping 2015-05-04 14:29:33 -07:00
Eric Paris
6b3a6e6b98 Make copyright ownership statement generic
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Filip Grzadkowski
15e9bfd9ae Add a simple cache for objects stored in etcd. 2015-04-30 12:08:56 +02:00
CJ Cullen
182f47ee3d Revert "Add a simple cache for objects stored in etcd" 2015-04-29 12:06:52 -07:00
Daniel Smith
2802b18b0a Merge pull request #7288 from fgrzadkowski/perf
Add a simple cache for objects stored in etcd
2015-04-29 09:00:33 -07:00
Paul Morie
8fa21ebd62 Merge pull request #7419 from liggitt/secrets_etcd
Convert Secret registry to use update/create strategy, allow filtering by Type
2015-04-29 09:59:22 -04:00
Filip Grzadkowski
016e20167b Add a simple cache for objects stored in etcd. 2015-04-29 13:14:31 +02:00
Brian Grant
a4316aa638 Merge pull request #7454 from nikhiljindal/v1
Cloning v1beta3 as v1 and exposing it in the apiserver
2015-04-28 18:06:57 -07:00
nikhiljindal
c4d7e19c8c Cloning v1beta3 as v1 and exposing it in the apiserver 2015-04-28 16:06:03 -07:00
Jordan Liggitt
ac67fff1cf Convert Secret registry to use update/create strategy, allow filtering by Type 2015-04-28 15:00:20 -04:00
Robert Bailey
4304b1d24a Set the 'WWW-Authenticate' header on 401 responses when basic
auth is enabled. This is required for basic auth to work with
web browsers.
2015-04-28 11:00:05 -07:00
Daniel Smith
83093af8b0 Merge pull request #5707 from endocode/kbeecher/etcd_prefix
Adds ability to define a prefix for etcd paths
2015-04-27 13:37:43 -07:00
Karl Beecher
a7623ca6cc Adds ability to define a prefix for etcd paths
The API server can be supplied (via a command line flag) with a custom
prefix that is prepended to etcd resources paths.

Refs: #3476
2015-04-24 12:12:39 +02:00
nikhiljindal
120904df5f Fixing serviceErrorHandler to use apiVersion specific codec 2015-04-23 14:32:05 -07:00
Clayton Coleman
10c2ace6bf Pod Templates 2015-04-22 12:54:25 -04:00
Fabio Yeon
951a125751 Add "componentstatus" to API for easier cluster health check. 2015-04-17 11:58:23 -07:00
Clayton Coleman
b3f03b934d Merge pull request #6869 from csrwng/pod_connect
Pod proxy, portforward and exec subresources
2015-04-17 09:49:12 -04:00
nikhiljindal
f9132dc572 Registering serviceErrorHandler with go-restful 2015-04-16 14:59:44 -07:00
Cesar Wong
d672363387 Pod proxy, exec and portforward subresources
Makes it possible to access the following subresources:

/namespaces/<ns>/pods/<pod-name>[:port]/proxy
/namespaces/<ns>/pods/<pod-name>/exec?container=<container>&command=<cmd>
/namespaces/<ns>/pods/<pod-name>/portforward
2015-04-16 10:20:17 -04:00
Alex Robinson
2b14fc1d14 Remove the cloud provider field from the services REST handler and the master
now that load balancers are handled by the ServiceController.
2015-04-14 18:56:47 +00:00
Daniel Smith
629d94657e Merge pull request #6624 from gmarek/status_to_subresource
Update NodeStatus use subresources.
2015-04-09 16:00:15 -07:00
Wojciech Tyczynski
0e5b478b4d ListMinions support for selectors 2015-04-09 14:22:09 +02:00
gmarek
ccc56d3c3c Update NodeStatus use subresources. 2015-04-09 14:07:40 +02:00
Tim Hockin
f2c8decffe Clarify network-related flags in the master
Rename and rejigger flags to make it more obvious what is happening.  Change
the default listen from ChooseHostInterface() to 0.0.0.0.
2015-04-07 15:55:51 -07:00
Derek Carr
27c12d5160 Merge pull request #6473 from markturansky/yoko_pv_client
Added PVClaim status subresource
2015-04-07 11:39:58 -04:00
Cesar Wong
8df4758ee9 Pod log subresource
Adds a Log subresource to Pod storage. The Log subresource implements
rest.GetterWithOptions and produces a ResourceStreamer resource that
will stream the log output from the pod's host node.
2015-04-07 07:56:24 -04:00
Cesar Wong
58a1b308c1 Refactor storage return for pod etcd storage
Convert the return value of pods rest.NewStorage to a struct.
This will allow returning more storage objects for a pod (sub resources)
without awkwardly adding more return values.
2015-04-07 07:46:30 -04:00
markturansky
4e528a847a added PVClaim status subresource 2015-04-06 14:42:22 -04:00
markturansky
95bd170ca2 PV & PVC Client implementation 2015-04-06 08:46:43 -04:00
Robert Bailey
4488ff95a2 Create an insecure (http) read-only port on the kubelet so that
heapster can collect metrics. Update the heapster config to
point to the non-secured port.
2015-04-02 10:45:49 -07:00
Robert Bailey
f15e34a1bf Revert "Merge pull request #6309 from GoogleCloudPlatform/revert-6243-kubelet-ssl"
This reverts commit 96a0a0d618, reversing
changes made to 2af9b54147.
2015-04-02 10:44:37 -07:00
Robert Bailey
32a1c052dc Revert "Configure the kubelet to use HTTPS" 2015-04-01 13:59:31 -07:00
Robert Bailey
58bc792e68 Configure the master to connect to the kubelet using HTTPS. 2015-04-01 09:09:29 -07:00
Brian Grant
af858c99e2 Merge pull request #6098 from nikhiljindal/enableInMaster
Enabling v1beta3 api version by default in master
2015-03-31 15:31:18 -07:00
Tim Hockin
186818d787 WIP: Implement multi-port Services 2015-03-30 19:28:11 -07:00
Robert Bailey
bc8af553a3 Configure the kubelet to bind a simple healthz server to a localhost
port for monitoring by monit. This is in preparation for the standard
kubelet port to switch to SSL only (and eventually to only accepting
connections on the SSL port that present a proper client SSL cert).

Also standardize the formatting of the monit config files a bit.
2015-03-30 14:20:30 -07:00
nikhiljindal
478b7d5edf Repurposing enableV1beta3 to disableV1beta3 in master config to enable v1beta3 by default 2015-03-30 11:50:10 -07:00
Brian Grant
f0da47b2dd Merge pull request #5763 from smarterclayton/get_input_parameters_versioned
Expose versioned query parameters and make watch an operation on List
2015-03-27 14:35:23 -07: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
Clayton Coleman
1618c39a46 Convert List query parameters via object conversion
Convert url.Values -> an object, with appropriate versioning. ListOptions
should also expose parameter names to swagger.
2015-03-27 15:03:57 -04:00
Brendan Burns
7c684e4331 Pipe through the ability to set the external hostname for swagger URLs. 2015-03-25 21:08:05 -07:00
Masahiro Sano
c49af0b7cb port minion registry to generic etcd 2015-03-26 02:44:35 +09:00
Saad Ali
1f50bd226b Merge pull request #5854 from fgrzadkowski/delete_pod_cache
Delete pod_cache and rely on updating pod status by kublet.
2015-03-25 09:17:09 -07:00
Filip Grzadkowski
74da3b14b0 Delete pod_cache and rely on updating pod status by kublet. 2015-03-25 15:08:09 +01:00
Masahiro Sano
410e11c305 port endpoints to generic etcd 2015-03-25 22:15:19 +09:00
Deyuan Deng
ca68f4a9d1 Rename ConditionFull->ConditionTrue, ConditionNone->ConditionFalse 2015-03-24 17:28:59 -04: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
Prashanth Balasubramanian
ef6601646d Migrate replication controllers to generic etcd 2015-03-23 17:59:25 -07:00
Clayton Coleman
9bb797fe93 Rename NewREST -> NewStorage to align on terminology 2015-03-23 16:52:21 -04: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
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
CJ Cullen
2e7356bca7 Merge pull request #5534 from bprashanth/generic_storage_interface
Add a GenericRESTStorage interface
2015-03-19 09:35:06 -07:00
Prashanth Balasubramanian
960e16c397 Embed etcdgeneric in RESTStorage for pods 2015-03-18 16:31:33 -07: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
Filip Grzadkowski
1a352b74ba Periodically update pod status from kubelet. 2015-03-18 12:11:39 +01:00
Filip Grzadkowski
18b728ff44 Revert "Periodically update pod status from kubelet." 2015-03-17 13:51:45 +01:00
Filip Grzadkowski
336525a27d Periodically update pod status from kubelet. 2015-03-16 23:03:03 +01:00
Tim Hockin
9eebaa8168 Merge pull request #4115 from sub-mod/master_changes
Use discovery heuristics in ChooseHostInterface method to fetch PublicAddress
2015-03-16 14:31:15 -07:00
Clayton Coleman
bddef32193 Prepare EtcdHelper to extract more data from Node
In order to support graceful deletion, the resource object will
need access to the TTL value in etcd.  Also, in the future we
may want to get the creation index (distinct from modifiedindex)
and expose it to clients.  Change EtcdResourceVersioner to be
more type specific (objects vs lists) and provide a default
implementation that relies on the internal API convention.

Also, rename etcd_tools.go to etcd_helper.go and split a few
things up.
2015-03-16 15:33:50 -04:00
Subin M
1138045185 use ChooseHostInterface to get IP 2015-03-16 23:37:00 +05:30
Jeff Lowdermilk
e37fd2a84d Merge pull request #5477 from dchen1107/clean
Convert RestartPolicy to string for v1beta3.
2015-03-16 10:23:52 -07:00
Jeff Lowdermilk
f3cb9949a7 Merge pull request #5484 from smarterclayton/dont_warn_on_existing
Don't log when auto-published services and namespace exist already
2015-03-16 09:54:19 -07:00
derekwaynecarr
2d13dfaf13 Improvements to namespace registry to align with pod model 2015-03-16 10:16:28 -04:00
Clayton Coleman
893a64f2ed Don't log when auto-published services and namespace exist already
Also, be a bit less chatty w.r.t. master setDefaults
2015-03-14 13:07:56 -04:00
Dawn Chen
34e9c82c70 Convert RestartPolicy to string for v1beta3.
Fixed #3607 and spiritually support #5475
2015-03-13 18:38:07 -07:00
derekwaynecarr
799e3fa9cc Eliminate ResourceQuotaUsage in favor of ResourceQuota status 2015-03-13 16:52:09 -04:00
Timothy St. Clair
7eebf674d4 Update to option enable profiling on the master daemon processes.
--profiling=true , default is false
2015-03-13 10:45:01 -05:00
Jerzy Szczepkowski
ba9d02c0c7 Cleanup: removed BoundPodFactory.
Removed unused code: BoundPodFactory. Fixes #5384.
2015-03-13 10:44:25 +01:00
nikhiljindal
8c3f728aa6 Adding http:// prefix to the swagger WebServicesURL to prevent basePath validation errors 2015-03-11 16:52:45 -07:00
Daniel Smith
6606f9c9f5 double-fix crash on my cluster 2015-03-11 09:54:33 -07:00
Federico Simoncelli
daed0af3b5 api: return endpoints target object references
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 18:32:53 -04:00
Salvatore Dario Minonne
925fa6baf8 Adding fields selector 2015-03-10 22:13:10 +01: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
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
4b16a87096 Simplify api_installer and setup methods 2015-03-09 14:39:31 -04:00
Brendan Burns
7c654a3d1b Expand test coverage in master, kubectl/cmd/util, pkg/registry/resourcequota, and api/rest. 2015-03-07 15:24:39 -08:00
Yu-Ju Hong
3ccdb8db98 kubelet: reject pods on host port conflict
When a host port conflict is detected, kubelet should set the pod status to
fail. The failed status will then be polled by other components at a later time,
which allows replication controller to create a new pod if necessary.

To achieve this, this change stores the pod status information in a status map
upon the detecton of port conflict. GetPodStatus() consults this status map
before attempting to query docker. The entries in the status map will be removed
when the pod is no longer associated with the node.
2015-03-06 10:46:49 -08:00
Deyuan Deng
9b0af8df63 Node addresses 2015-03-04 16:47:31 -05:00
Brian Grant
fca9fd68c7 Merge pull request #4779 from smarterclayton/status_endpoints
Minimal status mutation change
2015-03-03 11:00:02 -08:00
Filip Grzadkowski
86b1c90097 Add flag to control probing pods statuses from kubelets. 2015-03-02 16:06:14 +01:00
Clayton Coleman
3d290089ae Minimal status mutation change
PUT /api/v1beta3/namespaces/default/pods/foo/status
    {
      "metadata": {...}, // allowed for valid values
      "spec": {}, // ignored
      "status": {...}, // allowed, except for Host
    }

Exposes the simplest possibly change. Needs a slight refactoring
to RESTUpdateStrategy to split merging which can be done in a
follow up.
2015-03-01 22:35:17 -05:00
Lénaïc Huard
060ebfcea0 Fix nil pointer dereference in kube-apiserver when etcd is not there 2015-02-27 17:33:02 +01:00
Eric Tune
e77745672c Merge pull request #4577 from satnam6502/cluster-name
Qualify the name of forwarding rules with INSTANCE_PREFIX
2015-02-26 13:17:49 -08:00
nikhiljindal
b771a56435 Stop importing expvar 2015-02-26 10:47:58 -08:00
Mike Danese
5267127af1 api: rename conditionkind -> conditiontype 2015-02-23 22:13:21 -08:00
Satnam Singh
19b927ea57 Name a cluster and use it to make forwarding rules for GCE 2015-02-23 17:04:33 -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
Tim Hockin
899d30f16a move pkg/master/server to cmd/kube-apiserver/app 2015-02-20 08:49:12 -08: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
Tim Hockin
34eaa0dbd6 Part 1 of plural ports: Add protocol to Endpoints
This makes it easier to make the second step, which is moving endpoints
to a struct instead of a string.
2015-02-18 18:58:04 -08:00
Paul Morie
fb001ada21 Secret API resource 2015-02-18 11:54:56 -05:00
Tim Hockin
003c0986b4 Merge pull request #4478 from thommay/rackspace_cloud_base
Basic Rackspace cloud support
2015-02-17 13:41:31 -08:00
Thom May
8357e1521a Basic Rackspace cloud support
This enables all but Load Balancer support for the Rackspace public
cloud platform.
2015-02-17 10:59:40 +00:00
Clayton Coleman
7a93af57c0 Remove pods from pkg/registry/etcd/etcd.go since they are in their own type
Altered the master initialization code
2015-02-16 10:09:27 -05:00
Clayton Coleman
247e467217 Collapse pod REST+Registry to a single object using generic/etcd 2015-02-16 10:09:27 -05:00
Dawn Chen
1ce999318e Better debugging log for investigating pod unknown status. 2015-02-13 15:27:14 -08:00
Jordan Liggitt
083ce268e0 Put user in context, map requests to context above resthandler layer 2015-02-12 20:58:04 -05:00
Eric Tune
dd8f335380 Merge pull request #4376 from dchen1107/podstatus
Fix podstatus issue caused by docker's resource temporarily unavailable issue
2015-02-12 13:16:09 -08:00
Eric Tune
5b4569697f Stop putting env vars into BoundPods.
They will still show up in etcd.  They never were available
through the API.

A subsequent PR(s) will rip out all BoundPods code.
Working in small increments.

This PR will cause users on lagging cloud providers
to not get env vars in their pods if they update to this code.
They have already been warned via email.

Removed unit tests of BasicBoundPodFactory.
There is adequate coverage in pkg/kubelet/kubelet_test.go.
2015-02-12 08:37:23 -08:00
Dawn Chen
af54c62766 Fix podstatus issue caused by docker's resource temporarily unavailable error 2015-02-11 23:52:58 -08:00
Clayton Coleman
79cb93002e Remove asynchronous channel on RESTStorage interfaces 2015-02-11 16:26:07 -05:00
Clayton Coleman
dce4cd8b1d Merge pull request #3613 from derekwaynecarr/namespace_as_kind
Namespace as kind
2015-02-10 14:49:58 -05:00
Mike Danese
043794492e implement readiness. 2015-02-10 08:30:09 -08:00
derekwaynecarr
0bd0e12bbc Add support for Namespace as Kind
Add example for using namespaces
2015-02-10 09:50:50 -05:00
Tim Hockin
2707bcf10e Fix wrong port on kubernetes service
* Rename a field to make it more obvious.
* Fix some comments and other minor artifacts.

Verified by hitting the service on 443, and by hitting the master on 8080,
6443, and 7080.
2015-02-06 20:23:17 -08:00
Brendan Burns
b527b8a9ef Add some more verbose logging around pod status. 2015-02-06 12:42:17 -08:00
Brian Grant
175e9caa55 Merge pull request #4194 from dchen1107/podstatus
Kubelet decides podStatus
2015-02-05 17:18:39 -08:00
Dawn Chen
4da829ef20 comment. 2015-02-05 15:57:26 -08:00
Dawn Chen
f762e062f2 Kubelet decides podStatus 2015-02-05 15:49:41 -08:00
Brendan Burns
6d0b8ea7a7 Fix a regression where we never cleared out failed nodes. 2015-02-05 10:55:57 -08:00
Brendan Burns
550b98ebf4 Merge pull request #3931 from deads2k/deads-pull-more-info-from-request
pull more complete information from request
2015-02-04 12:23:20 -08: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
1c9216a45e clarify api request information 2015-02-04 13:36:01 -05:00
nikhiljindal
18609e1706 Moving /watch, /proxy and /redirect registration to go-restful 2015-02-03 15:47:48 -08: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
Deyuan Deng
31991f82c6 Remove ip cache, use node status cache instead. 2015-02-02 17:08:36 -05:00
Alex Robinson
9992abdfcf Merge pull request #3997 from smarterclayton/make_master_index_optional
Make master index optional when master is used in other contexts
2015-02-02 12:45:18 -08:00
Clayton Coleman
7f39a37eee Fix integration tests to not depend on setting pod.Status on create
Allow the master to have pod/node cache timeouts controlled via a config
flag for integration tests.

Move integration test to '127.0.0.1' so that it correctly returns a health
check, and enable health check testing on the integration test.
2015-02-02 14:46:23 -05:00
Alex Robinson
7868fe468e Merge pull request #3618 from saad-ali/fix2410
Make master service IP static (no longer randomly assigned)
2015-02-02 11:05:58 -08:00
derekwaynecarr
4c33e36a88 Plumb restmapper properly through apiserver and tests 2015-02-02 10:26:19 -05:00
Clayton Coleman
42175b433a Make master index optional when master is used in other contexts
OpenShift provides a default URL at the root that shows the UI. The
provided flag makes loading the index handler optional for now.
2015-01-30 22:19:55 -05:00
saadali
e83fd7b8e7 Make master service IP static (no longer randomly assigned) 2015-01-30 16:07:19 -08:00
Clayton Coleman
49ee27988d Print the returned object in the event of a publish error
resp.Object is a pointer, so printing resp doesn't show what the
server returned.
2015-01-30 18:27:50 -05:00
Joe Beda
6bdede6925 Convert kube-apiserver to hyperkube.
Part of #108.

Also:
* Added hyperkube cmd (not built by default yet).
* Added version support to hyperkube
* Remove health_check_minions flag from apiserver as it is no longer used with #3733
2015-01-30 13:06:28 -08:00
Brian Grant
207d0f5d40 Merge pull request #3878 from thockin/infra_name
Use a constant for the pod infra container name
2015-01-30 09:18:00 -08:00
Satnam Singh
9a8d20a2fc Merge pull request #3969 from GoogleCloudPlatform/alex-mohr-patch-1
Update master.go's UpdateAllContainers to every 5 seconds instead of 30.
2015-01-30 07:58:43 -08:00
Deyuan Deng
c793c4f0ab Sync node status from node controller to master. 2015-01-29 23:17:15 -05:00
Alex Mohr
3ac5b611b1 Update master.go
Make pod status update every 5 seconds instead of every 30 to mask the issue #3952.  I suspect (but haven't confirmed) that #3927 doesn't completely address the issue since it will still happily cache a Pending status for up to 30 seconds even though the pod may have transitioned to Running already.
2015-01-29 18:54:35 -08:00
Brendan Burns
3624b65f1c Transform the podCache into a write-through cache.
Don't always clear podInfo, instead occasionally garbage collect.
2015-01-28 22:15:23 -08:00
derekwaynecarr
829fa69527 Introduce a ResourceQuota object 2015-01-28 15:03:19 -05:00
Tim Hockin
70ab406751 Use a constant for the pod infra container name
This is an implementation detail that has leaked out of kubelet.  Use a
constant to prevent divergence, for now.  Plan to get rid of it.

@dchen1107
2015-01-28 10:13:02 -08:00
Tim Hockin
60119db5d5 More e2e damage from renaming "net" to "POD"
This stops the bleeding.  Will followup with a constant.
2015-01-28 09:58:19 -08:00
derekwaynecarr
091cbe5fa2 Add a limit range resource 2015-01-27 16:41:27 -05:00
Brendan Burns
f124842505 Clear pod cache on delete. 2015-01-26 17:26:43 -08:00
Dawn Chen
c65f83f424 Merge pull request #3795 from ddysher/pod-cache-semantic
fix pod-cache with node semantic change
2015-01-26 16:04:48 -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
881be6c952 fix pod-cache with node semantic change 2015-01-25 16:59:00 -05:00
Deyuan Deng
e71227388e add node update method to client interface 2015-01-23 16:40:33 -05:00
Brian Grant
3ae67f8153 Merge pull request #3548 from nikhiljindal/listHandlers
Updating handleIndex in master to list all valid paths.
2015-01-21 15:42:50 -08:00
nikhiljindal
51007cc798 Updating handleIndex in master to list all valid paths.
The list of valid paths is computed from http.ServeMux and
restful.WebService.
Adding a mux helper - wrapper over mux, that keeps track of the paths
handled by mux.
2015-01-21 13:40:01 -08:00
Andrew Seidl
6dee1d7fa4 Fix typos in user-facing strings 2015-01-18 01:32:34 -06:00
Brendan Burns
e86c8f9e53 Merge pull request #3565 from dchen1107/podstatus
Introduce PodStatusResult, and deprecate PodContainerInfo.
2015-01-16 12:05:07 -08:00
Dawn Chen
15e9fa8a9d Introduce PodStatusResult, and deprecate PodContainerInfo. 2015-01-16 09:10:40 -08:00
nikhiljindal
1ccae67b6e master.go cleanup: Deleting unused public methods and converting rest to private 2015-01-15 16:22:43 -08:00
Clayton Coleman
90c835af47 The API server setup logging is debug specific, bump above V(4)
Reduces some chatter in test suites where we are confident this code
already works.  Also removed any logging which is obvious from swagger.

Finally, rolls up InstallREST related errors all the way back to master,
which will glog.Fatalf (coding errors).
2015-01-15 14:25:58 -05:00
Paul Morie
fd834ae84d Pods should see services only from their own ns 2015-01-14 17:06:36 -05:00
Dawn Chen
26a6628d8a Merge pull request #3374 from lavalamp/fix
Fix minion listing
2015-01-12 16:36:46 -08:00
Daniel Smith
3e75195ff3 make minion registry not intolerably slow 2015-01-12 16:20:52 -08:00
Daniel Smith
6e70853e83 genericize ip cache 2015-01-12 16:04:43 -08:00
nikhiljindal
6ddfb10728 Setting WebServicesUrl in swagger config, so that the api docs contain correct basepath 2015-01-12 13:48:39 -08:00
Clayton Coleman
22c99c98e2 Split RESTStorage into separate interfaces
Omit unimplemented interfaces from Swagger
2015-01-12 12:19:45 -05:00
nikhiljindal
7e909ed743 Changes to improve swagger ui.
- Separating out index, version and api handlers into independent web
  services. Moved the index handler to /welcome, version handler to
  /version and the api handler to /api,
2015-01-09 10:56:24 -08: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
derekwaynecarr
a56087cdf8 Remove client from attributes, remove admission control interface, fix-up error codes 2015-01-07 14:42:31 -05:00
derekwaynecarr
520ae3ef27 Implement basic admission control framework 2015-01-07 14:42:31 -05:00
nikhiljindal
1db30aeb51 Moving swagger-ui files from www/swagger-ui to third-party/swagger-ui
and adding LICENSE and README files
2015-01-05 16:27:33 -08:00
Daniel Smith
6916235513 Make locking simpler
add test for node existence cache behavior
2014-12-22 15:11:28 -08:00
Daniel Smith
dc5383dcf8 add ttl as param to ip cache 2014-12-22 14:14:03 -08:00
Daniel Smith
545d87d554 Move clock to util 2014-12-22 14:14:03 -08:00
Daniel Smith
5b8e91595a Make pod listing costant-time
* move ip cache out of registry/pod
* combine, rationalize, and move pod status logic
* Fix unit and integration tests
2014-12-22 14:14:03 -08:00
Brendan Burns
ba25ae49d7 Merge pull request #3070 from nikhiljindal/setApiVersion
Adding skeleton swagger UI
2014-12-19 17:16:04 -08:00
nikhiljindal
bf96e95899 ran gofmt 2014-12-19 16:16:54 -08:00
nikhiljindal
f12f5ed34b 1. Adding swagger-ui/dist files.
2. Updating datafile.go to include it.
3. Updating master,go to use it.
2014-12-19 14:56:20 -08:00
Daniel Smith
a63bd1bdfa Remove an unneeded trip over the network when getting/listing pods. 2014-12-18 17:47:59 -08:00
Deyuan Deng
3f84924095 Use constant for port number 2014-12-16 11:45:27 +08:00
bgrant0607
f621a05d74 Merge pull request #2945 from smarterclayton/support_optional_swagger
Make Swagger API support optional, so that consumers can define their own
2014-12-15 16:13:13 -08:00
Clayton Coleman
cd4135666e Make Swagger API support optional, so that consumers can define their own
OpenShift would like to also enable swagger, but we need to register our
services as swagger services prior to the SwaggerAPI being started. I've
added a bool (default false) to master.Config to enable swagger, and split
the method in master out so that a downstream consumer can call it.
2014-12-15 15:29:55 -05: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
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
Eric Tune
029a9b6400 Remove whoami handler.
This was a temporary thing.  Not aware of anyone using it.
2014-12-11 21:31:06 -08:00
Brendan Burns
59b5546b28 Turn on node level validation, and make the validation set dynamic. 2014-12-10 22:02:45 -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
9030759df8 Add 'nodes' everywhere 'minions' can be used in api / cli 2014-12-10 12:08:18 -05:00
Clayton Coleman
2c27f7d332 Allow an empty service 2014-12-09 12:48:53 -05:00
Mike Danese
5bda95f9fe added healthz check to the proxy with configurable port 2014-11-23 09:07:19 -08:00
Deyuan Deng
a4e7604266 Merge pull request #2478 from smarterclayton/refactor_minion_to_match_v1beta3
Move the internal minion representation to match v1beta3
2014-11-20 21:37:43 -05:00
Clayton Coleman
156000ef6d Move the internal minion representation to match v1beta3
Moves to 'Spec' and 'Status' internally and removes duplicate
fields.  Moves Capacity into Spec and drops use of NodeResources
2014-11-20 20:53:08 -05:00
Tim Hockin
ea960711ff Clean up error logs.
Use %v for errors, tidy some messages, make error messages start lowe-case
(as per go guidelines).  Just accumulated nits.
2014-11-21 09:45:26 +08:00
Jordan Liggitt
c895331277 Make master take authenticator.Request interface instead of tokenfile 2014-11-19 15:07:51 -05:00
markturansky
8af4ccb111 v1beta3 Pod refactor 2014-11-18 09:25:42 -05:00
Brian Grant
7583e1a643 Automatic API generation by adopting go-restful 2014-11-14 16:49:19 +00:00
Clayton Coleman
21a6e96418 Merge pull request #2126 from brendandburns/validatez
Add etcd to the list of services to validate.
2014-11-10 14:53:41 -05:00
Eric Tune
c068b56919 Return InsecureHandler from master.
Subsequent changes will make use of both
m.Handler and m.InsecureHandler for different ports.
2014-11-06 09:11:31 -08:00
Brendan Burns
d7dc20fd6a Add etcd to the list of services to validate.
Also add minions.
2014-11-05 21:22:01 -08:00
Daniel Smith
c163535563 Allow (delayed) apiserver starting when network interface isn't available immediately. 2014-11-05 12:07:33 -08:00
bgrant0607
fc0dab630c Merge pull request #2086 from markturansky/v1beta3_refactor
Refactor internal API for Services to match v1beta3
2014-11-04 21:48:02 -08:00
markturansky
bd7643c033 refactor services to v1beta3 2014-11-04 14:23:53 -05:00
Eric Tune
1668c6f107 Authorization based on namespace, kind, readonly.
Also, pass Authorizer into master.Config.
2014-11-03 17:45:15 -08:00
Eric Tune
3045035512 Get user from request and put in authz attribs.
Added integration tests for user-based auth.
2014-11-03 16:38:56 -08:00
Eric Tune
795bc7f976 Require a KubeletClient in master.New().
Without this, tests which create a master
will panic with a nil pointer when the periodic
podCache update runs.

Deleted unused FakePodInfoGetter.
Added FakeKubeletClient.
Passed to master.New.
Required a KubeletClient in master.New.
2014-11-03 16:09:41 -08:00
Eric Tune
55c2d6bbbb Add basic Authorization.
Added basic interface for authorizer implementations.
Added default "authorize everything" and "authorize nothing
implementations.
Added authorization check immediately after authentication check.
Added an integration test of authorization at the HTTP level of
abstraction.
2014-10-31 12:04:33 -07:00
Deyuan Deng
019b7fc74c Separate minion controller from master. 2014-10-30 20:24:15 -04:00
Eric Tune
9713b58caa Allocate mux in master.New()
Callsites no longer allocate a mux.
Master now exposes method to install handlers
which use the master's auth code.  Not used
but forks (openshift) are expected to use these
methods.  These methods will later be a point
for additional plug-in functionality.
Integration tests now use the master-provided
handler which has auth, rather than using the mux,
which didn't.  Fix TestWhoAmI now that /_whoami
sits behind auth.
2014-10-29 14:31:07 -07:00
Daniel Smith
070c6c0440 Fix missing portalNets in tests once and for all by adding a default. 2014-10-29 12:27:35 -07:00
Daniel Smith
a036ebc1be Switch models. No master election. 2014-10-29 11:38:45 -07:00
Daniel Smith
7146ec9d49 Implement kubernetes & kubernetes-ro services 2014-10-29 11:29:28 -07:00
Daniel Smith
94e736e286 Merge pull request #2009 from smarterclayton/unify_meta
Unify Accessor for ObjectMeta/TypeMeta/ListMeta
2014-10-29 09:58:46 -07:00
Daniel Smith
dca7363459 Serve API version list, test with an integration test. 2014-10-28 17:35:56 -07:00
Eric Tune
f7ebc7d0d5 Added /_whoami and integration test for auth(z|n)
Added new endpoint /_whoami for debugging authentication.
Added integration test which checks that a user is authenticated
using token authentication.
Rearranged initialization of authenticator to support preceeding.
2014-10-28 09:33:45 -07:00
Clayton Coleman
66ace4c270 Begin to unify ResourceVersioner and SelfLinker
Create a new MetadataAccessor interface that combines both
and use it where previously latest.ResourceVersioner and SelfLinker
were being used.

Adds Namespace to the get/set interface. Adds TODO about future
fast path for metadata (as per thockin's comment)
2014-10-27 16:00:55 -04:00
Eric Tune
245585f364 Move handler setup: cmd/apiserver -> pkg/master
Moved CORS handler setup and authorizer setup.
Will allow for integration test of authorization.
2014-10-27 11:43:12 -07:00
Eric Tune
40a5ca034d Integration test on master, not just apiserver.
Moved code from cmd/apiserver to pkg/master.

test/integration/client_test made to use a master object,
instead of an apiserver.Handle.

Subsequent PRs will move more handler-installation into
pkg/master, with the goal that every http.Handler of a
standalone apiserver process can also be tested
in a "testing"-style go test.

In particular, a subsequent PR will test
authorization.
2014-10-27 09:14:58 -07:00
derekwaynecarr
580cb5ea4f Rework client.Interface 2014-10-24 11:47:30 -04:00
Clayton Coleman
644eb70085 Refactor tests to split ObjectMeta from TypeMeta 2014-10-24 11:22:21 -04:00
Clayton Coleman
7550c146dc Replace struct initializers for TypeMeta with ObjectMeta 2014-10-24 11:22:21 -04:00
Haney Maxwell
3160500940 Refactor kubelet access and add SSL 2014-10-22 14:53:59 -07:00
Clayton Coleman
bb77a5d15f Rename ID -> Name 2014-10-22 15:00:26 -04:00
bgrant0607
71c6f8ee5c Merge pull request #1875 from lavalamp/fix3
fix typo
2014-10-20 12:13:43 -07:00
Daniel Smith
82bbcee8d9 Move port definitions to their own package 2014-10-20 11:28:12 -07:00
Daniel Smith
082a9d8af9 fix typo 2014-10-20 10:28:38 -07:00
Clayton Coleman
6ae611aedd Write BoundPods to etcd instead of ContainerManifestList
Rename ManifestFactory -> BoundPodFactory and change the general structure
of the call to focus on BoundPod.
2014-10-16 19:29:08 -04:00
Tim Hockin
e907011111 Core support for ip-per-service 2014-10-16 08:36:47 -07:00
Deyuan Deng
2bd88d4544 Remove OnceAndForever util, create a Run() method on MinionController. 2014-10-14 18:47:42 -04:00
Deyuan Deng
ec46e94dc2 Create MinionController to sync minions from cloudprovider (pkg cloudprovider/controller). 2014-10-14 18:45:25 -04:00
Daniel Smith
15680731f7 Add event endpoint to apiserver 2014-10-10 15:47:34 -07:00
derekwaynecarr
9e60bf1e43 Pod cache needs to be namespace-aware 2014-10-10 09:35:31 -04:00
Daniel Smith
5d24820dd5 Merge pull request #1464 from hmrm/add-etcd-config
Allow etcd config file to be passed to apiserver, kubelet, and proxy
2014-10-08 16:29:46 -07:00
Clayton Coleman
82bcdd3b3b Make ResourceVersion a string internally instead of uint64
Allows us to define different watch versioning regimes in the future
as well as to encode information with the resource version.

This changes /watch/resources?resourceVersion=3 to start the watch at
4 instead of 3, which means clients can read a resource version and
then send it back to the server. Clients should no longer do math on
resource versions.
2014-10-07 19:00:26 -04:00
Haney Maxwell
4d87159eda Allow etcd config file to be passed to apiserver, kubelet, and proxy 2014-10-07 14:25:54 -07:00
Deyuan Deng
4de810efb4 Rebase to master, change JSONBase to TypeMeta. 2014-10-07 16:22:36 -04:00
Deyuan Deng
c3d9197a4b Rename InsertMinion to CreateMinion. 2014-10-07 16:22:35 -04:00
Deyuan Deng
4a35325f29 Use etcd as backend for minion registry. 2014-10-07 16:22:35 -04:00
Clayton Coleman
d3e51a0f24 Rename JSONBase -> TypeMeta in preparation for v1beta3
Will make subsequent refactor much easier
2014-10-07 11:12:16 -04:00
Dawn Chen
8d0ed93aa1 Clean unittests 2014-10-06 13:37:22 -07:00
Brendan Burns
7c694d2cad Merge pull request #1596 from thockin/unbound
Better handling of unbound pods.
2014-10-06 13:31:41 -07:00
Daniel Smith
cc086908aa Merge pull request #1578 from brendandburns/controller
Extract the service controller from the apiserver.
2014-10-06 12:44:41 -07:00
Tim Hockin
372aa07b58 Better handling of unbound pods.
A small collection of tweaks to better handle pods when they are not currently
bound to a host.
2014-10-06 12:27:18 -07:00
Brendan Burns
e6991d0a66 Extract the service controller from the apiserver, put it in the controller manager for now. 2014-10-03 15:27:22 -07:00
Brendan Burns
1551b48347 Add a resource fit scheduler predicate. Set sensible defaults. 2014-10-03 15:09:59 -07:00
Daniel Smith
37e505601e add self linking to apiserver 2014-09-26 15:08:02 -07:00
Daniel Smith
b972f72248 convert multiple return values into a struct, add SelfLinker 2014-09-26 14:52:16 -07:00
derekwaynecarr
ee19ba186d Update to use api.Context 2014-09-26 11:50:34 -04:00
derekwaynecarr
3e685674e7 Add context object to interfaces 2014-09-26 11:50:34 -04:00
Dawn Chen
0e6ec3cbfc Convert existing kubernetes system to use ContainerStatus, instead of
docker.Container directly.

Conflicts:
	pkg/kubelet/dockertools/docker.go
	pkg/registry/pod/rest.go
2014-09-24 11:16:46 -07:00
Brendan Burns
253bce42fe Extract the minion registry from the etcd implementation into the pod registry where it belongs. 2014-09-23 15:42:59 -07:00
Clayton Coleman
5483333e29 Allow server and client to take api version as argument
* Defaults to v1beta1
* apiserver takes -storage_version which controls etcd storage version
  and the version of the client used to connect to other apiservers
* Changed signature of client.New to add version parameter
* All controller code and component code prefers the oldest (most common)
  server version
2014-09-18 23:27:28 -04:00
Clayton Coleman
ca5355908f Expose v1beta2 API group 2014-09-18 23:24:05 -04:00
Brendan Burns
99586b4da4 Fix a problem where if a minion went missing, we still thought the pod was running.
Also convert some tests to table driven.
2014-09-17 18:16:52 -07:00
Clayton Coleman
61e3ce7ddc Make runtime less global for Codec
* Make Codec separate from Scheme
* Move EncodeOrDie off Scheme to take a Codec
* Make Copy work without a Codec
* Create a "latest" package that imports all versions and
  sets global defaults for "most recent encoding"
  * v1beta1 is the current "latest", v1beta2 exists
  * Kill DefaultCodec, replace it with "latest.Codec"
  * This updates the client and etcd to store the latest known version
* EmbeddedObject is per schema and per package now
* Move runtime.DefaultScheme to api.Scheme
* Split out WatchEvent since it's not an API object today, treat it
like a special object in api
* Kill DefaultResourceVersioner, instead place it on "latest" (as the
  package that understands all packages)
* Move objDiff to runtime.ObjectDiff
2014-09-16 16:26:43 -04:00
Brendan Burns
99f7a4f25d Add healthz handlers to the controller manager and scheduler 2014-09-12 21:13:33 -07:00
Daniel Smith
759c3f9033 Rename all XStorage types to REST for clarity 2014-09-08 15:19:13 -07:00
Daniel Smith
0d30a656ef Do interface{} -> runtime.Object rename everywhere 2014-09-07 22:19:24 -07:00
Daniel Smith
1c2b65788d Rename Codec and ResourceVersioner to add Default in front, to allow for types of those names 2014-09-07 22:19:24 -07:00
Daniel Smith
a63966e73c Combine pkg/apitools and pkg/api/common and call the result pkg/runtime 2014-09-02 11:15:44 -07:00
Daniel Smith
099c8fd36f Propagate rename; tests pass again. 2014-09-02 10:42:06 -07:00
Vojtech Vitek (V-Teq)
59f58cd043 Unify Godoc formatting, fix various typos
Signed-off-by: Vojtech Vitek (V-Teq) <vvitek@redhat.com>
2014-09-02 13:41:03 +02:00
Joe Beda
2d8e160775 Merge pull request #1117 from lavalamp/fixApi
Invert api and api/v1beta1 dependencies
2014-08-29 14:59:15 -07:00
Daniel Smith
aa9b9b9fa8 Invert api and api/v1beta1 dependencies
This is some cleanup that has been needed for a while.
There's still one more step that could usefully be done, which is to
split up our api package into the part that provides the helper
functions and the part that provides the internal types. That can come
later.

The v1beta1 package is now a good example of what an api plugin should
do to version its types.
2014-08-29 12:15:30 -07:00
Clayton Coleman
bafc422ac0 Add the resource version to api.*List items from etcd
Allows clients to watch more easily (can invoke Get, then
Watch).
2014-08-28 23:17:00 -04:00
Brian Waldon
816c4a3c76 Remove unnecessary parameter from NewRegistry 2014-08-28 16:52:45 -07:00
Vojtech Vitek (V-Teq)
5500bbade6 Fix typos in pkg docs
Signed-off-by: Vojtech Vitek (V-Teq) <vvitek@redhat.com>
2014-08-28 11:43:35 +02:00
Clayton Coleman
083d81b6d7 Expose REST resource for endpoints and watch on services/endpoints
Will allow kube-proxies to listen on endpoints.
2014-08-27 15:49:01 -04:00
Clayton Coleman
b5e1e044bc Move EndpointsController to its own package
Avoids recursive loop with endpoint registry defined
2014-08-27 15:49:00 -04:00
Daniel Smith
98ef76c164 Remove references to scheduler from pod storage. 2014-08-25 11:59:00 -07:00
Daniel Smith
ddba004ad0 Add constraint package to let us reject invalid assignments. 2014-08-25 11:59:00 -07:00
Tim Hockin
edff541524 Treat async loops the same.
In the name of consistency, treat the PodCache loop the same as the
EndpointController.
2014-08-20 20:17:16 -07:00
Tim Hockin
caadf10197 clarity: rename minionRegistryMaker to makeMinionRegistry 2014-08-20 20:17:16 -07:00
Daniel Smith
138b560efb Implement bindings
This will effectively cause no changes until we remove the assignPod
call from CreatePod().
2014-08-18 16:55:44 -07:00
Daniel Smith
26e2256178 Remove unused and not completely correct code 2014-08-15 18:20:37 -07:00
Clayton Coleman
bbf3b55e76 Extract RESTHandler and allow API groupings
Prepare for running multiple API versions on the same HTTP server
by decoupling some of the mechanics of apiserver.  Define a new
APIGroup object which represents a version of the API.
2014-08-13 10:53:34 -04:00
Kelsey Hightower
c21a0ca39f Breakup the registry package into separate packages.
Currently all registry implementations live in a single package,
which makes it bit harder to maintain. The different registry
implementations do not follow the same coding style and naming
conventions, which makes the code harder to read.

Breakup the registry package into smaller packages based on
the registry implementation. Refactor the registry packages
to follow a similar coding style and naming convention.

This patch does not introduce any changes in behavior.
2014-08-11 20:58:09 -07:00
brendandburns
3222f61bca Merge pull request #557 from lavalamp/podLocation
Prepare for external scheduler
2014-08-11 15:27:24 -07:00
Daniel Smith
7d605467dc New scheduler API
This commit adds a Binding object. The idea is that schedulers can write
these to cause pods to be asssigned to hosts. I'll provide an implementation
along with a rudimentary scheduler plugin.

This continues k8s' tradition of phrasing all APIs as RESTful handlers.
2014-08-10 19:05:03 -07:00
Daniel Smith
5cdce0e35a Prepare for external scheduler
1. Change names of Pod statuses (Waiting, Running, Terminated).
2. Store assigned host in etcd.
3. Change pod key to /registry/pods/<podid>. Container location remains
   the same (/registry/hosts/<machine>/kublet).
2014-08-10 15:05:36 -07:00
Clayton Coleman
c9fc0bcf3d Decouple apiserver from codec implementation
The apiserver on initialization must be provided with a codec
for encoding and decoding all handled objects including api.Status
and api.ServerOp.  In addition, the RESTStorage Extract() method
has been changed to New(), which returns a pointer object that the
codec must decode into (the internal object).  Switched registry
methods to use pointers for Create/Update instead of values.
2014-08-07 13:35:35 -04:00
Kouhei Ueno
c8e1c6a02f dedupe apiserver.New 2014-08-05 05:11:25 +09:00
Kouhei Ueno
afa686ccc8 dedupe registry.MakeEndpointController init 2014-08-05 05:09:49 +09:00
Kelsey Hightower
6d1be5f0ee Add master.Config type and cleanup master configuration
Setting up a new master.Master instance requires passing
around too many arguments.

Add a master.Config type and group related master configs.
Refactor all commands to instantiate new masters using a
master.Config struct.
2014-07-26 22:07:24 -07:00
Brendan Burns
6c734b1c55 integrate minion health checking and caching. 2014-07-21 21:52:33 -04:00
Daniel Smith
60b6f5b6bd Merge pull request #524 from brendandburns/service
Make the service reconciller use the API, not a PodRegistry
2014-07-18 15:01:09 -07:00
Brendan Burns
c6255afe37 Make the service reconciller use the API, not a PodRegistry 2014-07-18 13:54:33 -07:00
Clayton Coleman
a17f0d04d4 PodInfo should indicate when a pod is not found
Client should react.  Also, dial down the chattiness of errors for
pods which do not exist and stop processing NotFound earlier in
the podinfo chain
2014-07-18 13:32:10 -04:00
Kouhei Ueno
938d9e811b don't reuse random 2014-07-16 15:58:16 +09:00
Yuki Yugui Sonoda
2861955025 Corrects wording of godoc comments. 2014-07-15 22:03:08 +09:00
Yuki Yugui Sonoda
60dd1f7cc0 Eliminates tautological comments 2014-07-15 20:58:01 +09:00
Yuki Yugui Sonoda
41febcee5e Merge branch 'master' into fix/golint
Conflicts:
	pkg/master/master.go
	pkg/master/pod_cache.go
	pkg/proxy/config/file.go
	pkg/proxy/proxier.go
	pkg/proxy/roundrobbin.go
	pkg/scheduler/randomfit.go
	pkg/scheduler/randomfit_test.go
2014-07-15 20:57:47 +09:00
Kouhei Ueno
c875a6d3ba rename FirstFitScheduler to RandomFitScheduler 2014-07-12 23:23:53 +09:00
Claire Li
d0aad153ee pkg/master: correct error string for GetPodInfo 2014-07-11 23:09:43 -07:00
Kouhei Ueno
bcbdbf6558 use New instead of Make and add comments to make golint happy 2014-07-11 22:46:22 +09:00
Yuki Yugui Sonoda
88284171f2 Fixes golint errors in pkg/master 2014-07-11 22:28:27 +09:00
Burcu Dogan
6a2703627b scheduler: use New rather than Make for construction helpers. 2014-07-10 22:56:14 -07:00
Daniel Smith
bf3b34c2e9 Allow master's pod info getter to be faked. Wire up in integration tests in futile attempt to make travis pass. 2014-07-01 17:08:32 -07:00
Daniel Smith
11d6451d2a Change kublet to serve podInfo instead of containerInfo. Plumb through system. 2014-07-01 16:41:10 -07:00
Daniel Smith
049bc6b6d4 Fix interface{} in api/types.go; plumb through system. 2014-07-01 16:41:09 -07:00
Brendan Burns
d5516e4cdc Activate gce minion list. 2014-07-01 11:33:58 -07:00
Daniel Smith
0760e9bc2c Fix up usage and tests, split into multiple files.
Doing this in multiple commits in an attempt to preserve the file movement history.
2014-06-29 12:35:43 -07:00
Brendan Burns
431fcac8b0 Initial integration of the cloud based minion registry. 2014-06-27 22:49:27 -07:00
Brendan Burns
a391b2ff03 Implement sync behavior for controllers. 2014-06-26 19:44:28 -07:00
Tim Hockin
9f9e75f508 Switch to glog for logging, bridge logging to glog.
1) imported glog to third_party (previous commit)
2) add support for third_party/update.sh to update just one pkg
3) search-and-replace:
  s/log.Printf/glog.Infof/
  s/log.Print/glog.Info/
  s/log.Fatalf/glog.Fatalf/
  s/log.Fatal/glog.Fatal/
4) convert glog.Info.*, err into glog.Error*

Adds some util interfaces to logging and calls them from each cmd, which
will set the default log output to write to glog.  Pass glog-wrapped
Loggers to etcd for logging.

Log files will go to /tmp - we should probably follow this up with a
default log dir for each cmd.

The glog lib is sort of weak in that it only flushes every 30 seconds, so
we spin up our own flushing goroutine.
2014-06-24 20:51:57 -07:00
Daniel Smith
6900431b13 Add kubelet testing to integration test. Test that kubelet makes the requested containers. Check that the url manifest feature works. 2014-06-24 15:14:40 -07:00
Daniel Smith
79ee5aa250 Implement minion registry. Minions now a first-class object. 2014-06-23 13:27:52 -07:00
Daniel Smith
d57531d924 Cleanup: no need for stacked timing loops 2014-06-22 11:17:23 -07:00
Brendan Burns
302ec0f37b Wire in the pod cache. Just used for List for now. 2014-06-18 22:26:35 -07:00
Brendan Burns
4f549aae54 Add a PodCache that is responsible for caching pod information.
Not wired in yet.
2014-06-18 20:04:52 -07:00
Brendan Burns
420b2fdd57 Add support for populating host ip address. 2014-06-18 14:57:50 -07:00
Brendan Burns
2759b2367f Add load balancing support to services. 2014-06-17 12:37:39 -07:00
Daniel Smith
ea5cbd44bb Refactor apiserver command; move logic to a package for reuse and eventual testing 2014-06-15 23:30:58 -07:00