Commit Graph

41 Commits

Author SHA1 Message Date
nikhiljindal
fa9f864782 Adding a script to update etcd objects 2015-05-15 16:20:35 -07:00
Jordan Liggitt
53d55f4192 Add ServiceAccount API type, client 2015-05-11 17:18:05 -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
Federico Simoncelli
37038c4877 replica: serialize created-by reference
Fixes #7322

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-05 16:06:41 -04: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
Fabio Yeon
951a125751 Add "componentstatus" to API for easier cluster health check. 2015-04-17 11:58:23 -07:00
Cesar Wong
4da14e9357 Add PodExecOptions and PodProxyOptions versioned resources
PodExecOptions represents the URL parameters used to invoke an
exec request on a pod. PodProxyOptions contains the path parameter
passed to a proxy request.
2015-04-16 10:20:17 -04:00
Cesar Wong
6dba6aa178 Add PodLogOptions versioned resource
PodLogOptions will capture options passed in to retrieve a pod's log.
2015-04-07 07:46:30 -04: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
markturansky
f762b303ad PersistentVolume & PersistentVolumeClaim API types 2015-03-25 10:09:25 -04:00
Clayton Coleman
428d2263e5 Graceful deletion of resources
This commit adds support to core resources to enable deferred deletion
of resources.  Clients may optionally specify a time period after which
resources must be deleted via an object sent with their DELETE. That
object may define an optional grace period in seconds, or allow the
default "preferred" value for a resource to be used. Once the object
is marked as pending deletion, the deletionTimestamp field will be set
and an etcd TTL will be in place.

Clients should assume resources that have deletionTimestamp set will
be deleted at some point in the future.  Other changes will come later
to enable graceful deletion on a per resource basis.
2015-03-19 15:33:32 -04:00
Wojciech Tyczynski
e6d188fca8 Remove BoundPod structure 2015-03-17 10:27:41 +01:00
derekwaynecarr
799e3fa9cc Eliminate ResourceQuotaUsage in favor of ResourceQuota status 2015-03-13 16:52:09 -04:00
Federico Simoncelli
1b18440f35 kubelet: add GetNodeInfo implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:11:01 -04:00
Tim Hockin
5aadd6ecae Change the v1b3 default for service ContainerPort
In v1b1 and v1b2 we choose the "first defined port" if you do not specify a
ContainerPort.  I am proposing that v1b3 just assume the ContainerPort is the
same as the service port unless explicitly provided.  This leaves named ports
for now, but that is under discussion on its own.

This is strictly compatible, though to implement this we have to leave the
internal objects with the looser behavior until v1b[12] die.  This also adds a
link dependency so that when we DO kill v1b[12] the endpoints controller will
blow up, prompting a fix.
2015-03-03 09:40:18 -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
Paul Morie
fb001ada21 Secret API resource 2015-02-18 11:54:56 -05:00
derekwaynecarr
0bd0e12bbc Add support for Namespace as Kind
Add example for using namespaces
2015-02-10 09:50:50 -05:00
nikhiljindal
19f7ecf31b Deleting the API objects related to /operations 2015-02-04 20:50:45 -08:00
derekwaynecarr
829fa69527 Introduce a ResourceQuota object 2015-01-28 15:03:19 -05:00
derekwaynecarr
091cbe5fa2 Add a limit range resource 2015-01-27 16:41:27 -05:00
Dawn Chen
15e9fa8a9d Introduce PodStatusResult, and deprecate PodContainerInfo. 2015-01-16 09:10:40 -08:00
Clayton Coleman
7fde4583f2 v1beta1 should return Minion as kind, rather than Node
This changes the internal name logic (for conversion) to prefer the
internal registered preferred name for a resource, and then makes
v1beta1 and v1beta2 prefer Minion.

Fixes #3010
2014-12-17 19:55:56 -05:00
bgrant0607
9b40c52c24 Merge pull request #2910 from smarterclayton/small_v1beta3_refactors
Fix internal -> v1beta3 round trip issues
2014-12-15 13:21:12 -08:00
Brendan Burns
d345dda1e5 Fix the kubelet uses api encode/decode by actually adding PodContainerInfo to v1beta1 2014-12-15 11:38:55 -08:00
Clayton Coleman
904d0d46c3 Rename ServerOp to Operation in v1beta3 and internal
Add the appropriate rename logic internally.
2014-12-12 18:08:41 -05:00
Daniel Smith
f81ec248d0 Merge pull request #2786 from smarterclayton/load_opaque_objects
Allow runtime.Object to be encoded as runtime.RawExtension
2014-12-10 16:24:05 -08:00
Clayton Coleman
650aead4c4 Support Node/NodeList as a valid name in all versions
Also refactor v1beta1/conversion_test.go `v1beta` -> `current` to allow
easier cut and paste of tests.
2014-12-10 11:53:38 -05:00
Clayton Coleman
5447e74129 Node/Nodelist 2014-12-10 11:48:41 -05:00
Clayton Coleman
8a833ca701 Add a List type that can contain arbitrary objects
Supports objects that the core schema may not recognize and
preserves them unmodified as runtime.Unknown
2014-12-09 10:31:17 -05:00
Clayton Coleman
892942af8f Read BoundPods from etcd instead of ContainerManifestList
There are three values that uniquely identify a pod on a host -
the configuration source (etcd, file, http), the pod name, and the
pod namespace. This change ensures that configuration properly
makes those names unique by changing podFullName to contain both
name (currently ID in v1beta1, Name in v1beta3) and namespace.

The Kubelet does not properly handle information requests for
pods not in the default namespace at this time.
2014-10-16 19:29:08 -04:00
Clayton Coleman
eea77a1449 Backport the BoundPods type to v1beta1/2/internal 2014-10-09 16:39:55 -04:00
Clayton Coleman
0a4d4b43f6 Move IsAnAPIObject() declarations to register.go
* Add Namespace, UID, Annotations to internal/v1beta1/v1beta2
* Update v1beta3 with minor consistency tweaks
2014-10-07 14:09:01 -04:00
Daniel Smith
283eaf3931 Add new Event type
* replaces previous Event type, which is too limited.
* Remove writing of old event type.
* Fix serialiazation test to automatically test all types.
2014-09-25 11:31:35 -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
Daniel Smith
77edb91032 Add Object type to runtime, make runtime test pass. 2014-09-07 22:19:24 -07:00
Clayton Coleman
01e668187c Services and Endpoints weren't properly sync'ing
They need incremental changes and a resync on start.
2014-09-03 16:04:55 -04: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
6121e61f99 Split api into api, api/common, api/validation & apitools 2014-09-02 10:40:52 -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