Commit Graph

2327 Commits (611c127f0d0325ad2f33ffb6bb9ecc20817ec3bb)

Author SHA1 Message Date
Clayton Coleman 09294b90ce Refactor Kubelet config sources for clarity
Create a new "Pod" concept which can identify pods from
many config sources.
2014-07-21 21:18:36 -04:00
Daniel Smith 69c483f620 Add APIObject for generic inclusion of API objects.
Includes test and json/yaml getters and setters.
2014-07-18 22:35:08 -07:00
Clayton Coleman d1de579070 Merge pull request #493 from lavalamp/scheduler
Add websocket dep & watch api support
2014-07-18 22:18:03 -04:00
Daniel Smith eda30d4f20 Add watch mechanism to apiserver
Implemented via HTTP and websocket. A test is present but this isn't
yet wired into anything.

Eventual purpose of this is to allow a scheduler to watch for new pods.
Or allow replication controller to watch for new items it controlls.
Generally, it'll be good to turn everything possible into a push instead
of a poll.
2014-07-18 16:47:17 -07:00
Danny Jones 136c9e112c Renames HasAll to IsSuperset; HasAll uses slice.
For the pedants. HasAll is now called IsSuperset and
the new HasAll method takes a slice instead of a set.
2014-07-18 13:58:43 -07:00
Danny Jones 2d9bad95f8 Added HasAll utility method for string set.
Added HasAll method which detects if one set contains all
of the memebers of another set.

A.HasAll(B) returns true if A is a superset of B.
2014-07-18 13:19:55 -07:00
Danny Jones bb2843498d API modified to use source; now supports EmptyDirectory
API is now modified to use a Source struct to handle multiple volumes.

Two volume types are supported now, HostDirectory and EmptyDirectory.
2014-07-17 15:25:50 -07:00
Danny Jones f84ff740f0 Adds initial volumes package; Supports host-dirs
Adds the framework for external volume mounts.

Currently supports bare host directory mounts.

Modifies the API to support host directory mounts from Volumes
instead of VolumeMounts.
2014-07-17 10:08:45 -07:00
Yuki Sonoda (Yugui) 07b8be4d4c Merge branch 'master' into fix/golint2
Conflicts:
	pkg/api/types.go
	pkg/health/health_check.go
	pkg/kubelet/kubelet.go
	pkg/kubelet/kubelet_server.go
	pkg/kubelet/kubelet_server_test.go
	pkg/kubelet/kubelet_test.go
2014-07-16 21:33:21 +09:00
Nan Deng 8c573ee727 Update to latest cAdvisor and use data structures directly from cAdvisor 2014-07-15 11:53:00 -07:00
Yuki Yugui Sonoda af38bf1ef7 Fixes golint errors in pkg/api 2014-07-15 22:56:09 +09:00
Brendan Burns 3cc5ff15cf Update services to use the internal IP and port, now that its available. 2014-07-14 20:24:58 -07:00
Brendan Burns 0e798bcc3c Add link env vars. 2014-07-14 16:37:17 -07:00
Tim Hockin 779cb84625 Merge pull request #397 from brendandburns/service
Add initial validation of Service objects
2014-07-11 14:43:47 -07:00
Brendan Burns c9babe619e Updated to use the makeInvalidError helper function. 2014-07-11 14:24:55 -07:00
Brendan Burns e9edfc754e Add initial validation of Service objects 2014-07-11 14:24:54 -07:00
Tim Hockin f532038281 Merge pull request #345 from smarterclayton/fix_ids
Ensure pod and manifest have a UUID in apiserver
2014-07-11 11:29:00 -07:00
Brendan Burns 6312ffebcf Address some comments from thockin@ 2014-07-11 10:14:45 -07:00
Clayton Coleman 5896ac14da Ensure pod and manifest always have a UUID
* Fixes implication #2 in docs/identifiers.md
* Replication controller lets the apiserver set the pod ID
2014-07-10 18:03:48 -04:00
Tim Hockin 06ac51e6e5 Merge pull request #389 from brendandburns/podip
Add PodIP to the info returned for a pod.
2014-07-10 11:18:05 -07:00
Yuki Sonoda (Yugui) 6914681ed0 Fixes golint errors in pkg/api 2014-07-10 20:46:35 +09:00
Brendan Burns 7b11cbd622 Add PodIP to the info returned for a pod. 2014-07-09 22:13:07 -07:00
Tim Hockin b0b9606aea Merge pull request #365 from brendandburns/health
add http health checks.
2014-07-09 16:14:30 -07:00
brendandburns 4c309862e3 Merge pull request #371 from thockin/valid3
Accumulate errors during validation
2014-07-09 13:36:37 -07:00
Brendan Burns 41c6680943 add http health checks. 2014-07-09 12:01:43 -07:00
Brendan Burns 4b22f7a462 Add support for host ip binding to the API (and kubelet) 2014-07-09 11:13:38 -07:00
Tim Hockin 4ecefd1ba3 Define an errorList type and use it to accumulate 2014-07-09 07:56:27 -07:00
Tim Hockin 54790080b3 Accumulate validation errors
Rather than report the first error, accumulate all errors and report them all
at once.
2014-07-09 07:55:15 -07:00
brendandburns 242627eaf0 Merge pull request #358 from thockin/valid2
Add validation of VolumeMounts
2014-07-08 21:58:32 -07:00
Tim Hockin ad88fa48a5 Add validation of Ports
Also do caseless compares for "enum" strings.
2014-07-08 15:22:44 -07:00
Tim Hockin dd6b209617 Add validation of VolumeMounts 2014-07-08 15:21:27 -07:00
Tim Hockin 8d6e832b8e Simplify DNS validation checks
Move DNS length checks to util/validation.go.  Make the max subdomain be 253,
which is what the RFC actually says.
2014-07-08 15:14:17 -07:00
Yuki Yugui Sonoda 780c441d19 Fixes golint errors in pkg/api 2014-07-08 16:08:58 +09:00
brendandburns 0b9f36b761 Merge pull request #307 from lavalamp/atomic
All PUTs now atomic
2014-07-02 16:31:35 -07:00
Tim Hockin 3f057baa0a Use structured errors during validation 2014-07-02 16:17:47 -07:00
Daniel Smith 3b9735d787 Test atomic PUTs, and make them work.
Improve apiserver/logger.go's interface (it's pretty cool now).

Improve apiserver's error reporting to clients.

Improve client's handling of errors from apiserver.

Make failed PUTs return 409 (conflict)-- http status codes are amazingly
well defined for what we're doing!
2014-07-02 15:42:05 -07:00
Daniel Smith a6144f656c Move etcd helpers to tools package so they can depend on api package. Add ResourceVersion, hook it up to etcd index to get atomic PUTs. 2014-07-02 15:42:05 -07:00
Tim Hockin 3cd56e85d6 Simplify supported manifest versions 2014-07-02 14:57:24 -07:00
Tim Hockin 48074d4ae7 Fix wrong json name for Key field 2014-07-02 10:30:27 -07:00
Tim Hockin 839f2aed7b Add validation for Container.Env
This includes backwards compat with the older "key" field.
2014-07-01 22:16:46 -07:00
brendandburns 8d2ee4b7ae Merge pull request #330 from thockin/valid7
Add basic validation of Containers
2014-07-01 22:14:40 -07:00
Tim Hockin fe67ef79b9 Add basic validation of Containers 2014-07-01 22:05:42 -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
Tim Hockin 045f1bda0c Add validation of Volumes 2014-07-01 16:30:39 -07:00
brendandburns ec01289aeb Merge pull request #326 from thockin/valid2
First piece ofn actual validation
2014-07-01 15:40:13 -07:00
Tim Hockin 8bc49a02c3 Document api types wrt validation
Part 3 in a series of changes towards data validation.
2014-07-01 13:58:44 -07:00
Tim Hockin a92e1aa1bf First piece of validation
I'm adding pieces incrementally to make sure we get full testing of each
piece.

Make syncLoop() private
2014-07-01 13:48:57 -07:00
Brendan Burns 13d7a5959a Add sync behavior to the pod registry. Expand tests. 2014-07-01 11:31:21 -07:00
Clayton Coleman 15c96508a9 Use ID instead of Id (go style) everywhere
Fixes #278
2014-07-01 13:16:47 -04:00
Meir Fischer a2513eb1d6 Test rejection of bad JSON. 2014-06-26 19:27:56 -04:00
Daniel Smith afd13edd6a Address comments; also, demonstrate one more property in test. 2014-06-26 11:36:15 -07:00
brendandburns 19fa068de4 Merge pull request #232 from lavalamp/master
Make minion printing prettier; standardize on MinionList.Items
2014-06-24 15:34:06 -07:00
Daniel Smith 2cc038298b Make minion printing prettier; standardize on MinionList.Items like the other list types. 2014-06-24 15:29:17 -07:00
Brendan Burns 8b50e45dcc Update the proxy server. 2014-06-24 11:25:45 -07:00
Daniel Smith c12a3773f5 Add minion types, address other comments 2014-06-23 13:27:52 -07:00
Daniel Smith ee75bb8dbe Address comments; Also internally start using JSONBase instead of reflect.Value of JSONBase. 2014-06-23 09:54:17 -07:00
Daniel Smith 41534c1cc5 Encode/decode working everywhere now. 2014-06-23 09:54:17 -07:00
Daniel Smith d7b4915111 Don't make people have to worry about the Kind field. 2014-06-23 09:54:17 -07:00
Daniel Smith fb991fb84e Change type to []byte 2014-06-23 09:54:17 -07:00
Daniel Smith a9d9bb9d47 Add intelligent type marshalling/unmarshalling 2014-06-23 09:54:17 -07:00
brendandburns 3a9a3b1114 Merge pull request #174 from monnand/kubelet-cadvisor
Letting kubelet retrieve container stats from cAdvisor
2014-06-20 08:36:22 -07:00
brendandburns 168ec29f54 Merge pull request #178 from vmarmol/add-external-mounts
Adding support for external mounts
2014-06-19 21:28:40 -07:00
Victor Marmol e794f539d8 Adding support for external mounts 2014-06-19 21:14:19 -07:00
Brendan Burns ae9fce1358 Fix the container manifest to so that Command is an array, not a string. 2014-06-19 20:21:20 -07:00
Nan Deng 037cfd257f add /containerStats 2014-06-19 20:44:52 +00:00
Daniel Smith cfce408266 Rename ReplicasInSet to ReplicaSelector 2014-06-19 13:31:42 -07:00
Daniel Smith c4649d539b Separate labels and selector in services for clarity 2014-06-19 13:30:04 -07:00
Brendan Burns 2759b2367f Add load balancing support to services. 2014-06-17 12:37:39 -07:00
Brendan Burns 32071289e6 Add some documentation 2014-06-15 22:42:19 -07:00
Brendan Burns 164160adef Address package level comments for readability. 2014-06-12 20:26:12 -07:00
Daniel Smith 601f6bb4ad Add inline attribute 2014-06-12 17:23:28 -07:00
Daniel Smith 12c1d660a3 Fix link 2014-06-11 17:20:16 -07:00
Brendan Burns 66e2575f2b More Task -> Pod 2014-06-08 21:43:17 -07:00
Brendan Burns c8d493f532 Part one of the grand rename: Task -> Pod 2014-06-08 21:17:53 -07:00
Brendan Burns ef7cce5dad Populate 'Kind' field in all API types being returned. 2014-06-07 21:07:20 -07:00
Joe Beda 2c4b3a562c First commit 2014-06-06 16:40:48 -07:00