Commit Graph

307 Commits

Author SHA1 Message Date
Tim Hockin
87a35047dd Move FieldPath and errors to a sub-package
This makes the naming and reading a lot simpler.
2015-12-10 11:48:16 -08:00
deads2k
2ee3dfe415 update testapi to eliminate redundant fields 2015-12-07 15:54:26 -05:00
Jordan Liggitt
7d10fd3591 Validate pod spec.nodeName 2015-12-05 11:34:09 -05:00
Tim Hockin
e6df0b1a24 Convert validation to use FieldPath
Before this change we have a mish-mash of ways to pass field names around for
error generation.  Sometimes string fieldnames, sometimes .Prefix(), sometimes
neither, often wrong names or not indexed when it should be.

Instead of that mess, this is part one of a couple of commits that will make it
more strongly typed and hopefully encourage correct behavior.  At least you
will have to think about field names, which is better than nothing.

It turned out to be really hard to do this incrementally.
2015-12-03 08:19:44 -08:00
k8s-merge-robot
b3846ea748 Merge pull request #17862 from feihujiang/ensureHeadlessServicePortEqualToTargetPort
Auto commit by PR queue bot
2015-12-02 03:35:36 -08:00
Harry Zhang
70a9c0bf56 Add directory in GitRepo and updated tests.
Update validate and gitRepo

Update generated code
2015-12-02 00:20:38 +08:00
feihujiang
81b095ee52 Ensure headless service port equal to targetPort 2015-12-01 14:37:26 +08:00
Tim Hockin
682f2a5a79 Stronger typing for validation ErrorList 2015-11-23 10:01:43 -08:00
Tim Hockin
48b49a5cae s/ValidationErrorList/ErrorList/ 2015-11-22 20:13:20 -08:00
Tim Hockin
d64d1fbb3d s/ValidationError/Error/ 2015-11-22 20:12:46 -08:00
Tim Hockin
2a127d089a s/ValidationErrorType/ErrorType/ 2015-11-22 20:12:39 -08:00
Tim Hockin
0ff66da346 Move fielderrors into validation 2015-11-22 20:12:20 -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
eulerzgy
501c2825cf Make order of fun consistent 2015-11-10 17:43:54 +08:00
k8s-merge-robot
4e39dd4b7d Merge pull request #16925 from mikedanese/headless-fix-1
Auto commit by PR queue bot
2015-11-07 08:03:18 -08:00
Tim St. Clair
1e88a682da Add liveness/readiness probe parameters
- PeriodSeconds - How often to probe
- SuccessThreshold - Number of successful probes to go from failure to success state
- FailureThreshold - Number of failing probes to go from success to failure state

This commit includes to changes in behavior:

1. InitialDelaySeconds now defaults to 10 seconds, rather than the
kubelet sync interval (although that also defaults to 10 seconds).
2. Prober only retries on probe error, not failure. To compensate, the
default FailureThreshold is set to the maxRetries, 3.
2015-11-06 10:46:40 -08:00
Mike Danese
09295cd664 Headless services should not need to declare ports 2015-11-06 09:57:41 -08:00
mqliang
57faaf4f96 refactor validation.go to avoid duplicating 2015-10-23 14:23:55 +08:00
Janet Kuo
e36121ae9b Increase the annotation size limit to 256k 2015-10-21 16:16:55 -07:00
derekwaynecarr
62b4467c69 Resource Quota should not let fractional values for API resources 2015-10-14 09:47:38 -04:00
derekwaynecarr
544b453e31 Add replication controller status subresource 2015-10-07 14:39:33 -04:00
Paul Morie
227dd82119 Add PodSecurityContext and backward compatibility tests 2015-10-05 21:05:27 -04:00
Álex González
fa39c2b032 Add flocker volume plugin
Flocker [1] is an open-source container data volume manager for
Dockerized applications.

This PR adds a volume plugin for Flocker.
The plugin interfaces the Flocker Control Service REST API [2] to
attachment attach the volume to the pod.

Each kubelet host should run Flocker agents (Container Agent and Dataset
Agent).

The kubelet will also require environment variables that contain the
host and port of the Flocker Control Service. (see Flocker architecture
[3] for more).

- `FLOCKER_CONTROL_SERVICE_HOST`
- `FLOCKER_CONTROL_SERVICE_PORT`

The contribution introduces a new 'flocker' volume type to the API with
fields:

- `datasetName`: which indicates the name of the dataset in Flocker
  added to metadata;
- `size`: a human-readable number that indicates the maximum size of the
  requested dataset.

Full documentation can be found docs/user-guide/volumes.md and examples
can be found at the examples/ folder

[1] https://clusterhq.com/flocker/introduction/
[2] https://docs.clusterhq.com/en/1.3.1/reference/api.html
[3] https://docs.clusterhq.com/en/1.3.1/concepts/architecture.html
2015-10-01 01:10:00 +01:00
derekwaynecarr
b29722c728 Ensure ResourceQuota values are non-negative 2015-09-24 10:15:40 -04:00
k8s-merge-robot
e535e27e82 Merge pull request #14279 from pweil-/ipc-followup
Auto commit by PR queue bot
2015-09-22 07:28:07 -07:00
k8s-merge-robot
c96c76b729 Merge pull request #13780 from smarterclayton/pod_logs
Auto commit by PR queue bot
2015-09-21 17:02:47 -07:00
Clayton Coleman
c2e90cd154 Support extended pod logging options
Increase the supported controls on pod logging. Add validaiton to pod
log options. Ensure the Kubelet is using a consistent, structured way to
process pod log arguments.

Add ?sinceSeconds=<durationInSeconds>, &sinceTime=<RFC3339>, ?timestamps=<bool>,
?tailLines=<number>, and ?limitBytes=<number>
2015-09-21 15:39:32 -04:00
Paul Weil
20361e33f2 use infra container ns for ipc 2015-09-21 12:47:19 -04:00
k8s-merge-robot
843134885e Merge pull request #12470 from simon3z/add-host-ipc
Auto commit by PR queue bot
2015-09-21 09:15:01 -07:00
Huamin Chen
ed9a1bbd3a support fibre channel volume
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-18 19:15:31 -04:00
Federico Simoncelli
f21d9ac9e4 Support pods with containers using host ipc
Add a HostIPC field to the Pod Spec to create containers sharing
the same ipc of the host.

This feature must be explicitly enabled in apiserver using the
option host-ipc-sources.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-09-18 21:13:39 +02:00
k8s-merge-robot
73d71d6a67 Merge pull request #14096 from mvdan/util-duration
Auto commit by PR queue bot
2015-09-18 00:20:43 -07:00
Daniel Martí
586cb9126a Move pkg/util.Time to pkg/api/unversioned.Time
Along with our time.Duration wrapper, as suggested by @lavalamp.
2015-09-17 17:51:27 -07:00
hurf
daeae81e1e Add validation to MaxLimitRequestRatio in LimitRange
MaxLimitRequestRatio should >=1
MaxLimitRequestRatio should <= max/min(if both are specified)
2015-09-16 11:41:48 +08:00
k8s-merge-robot
86b4e777e1 Merge pull request #13834 from derekwaynecarr/more_improvements_to_limit_range_validation
Auto commit by PR queue bot
2015-09-13 17:01:56 -07:00
derekwaynecarr
9bc48f699d Validate LimitRange default and defaultRequest are not supported for limits of type Pod 2015-09-11 12:22:30 -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
derekwaynecarr
ea919f6d1e Fix precision handling in validating LimitRange 2015-09-09 15:52:29 -04:00
Chao Xu
9fc79e9d99 refactor testapi and test scripts to prepare for multiple API groups. 2015-09-04 18:01:32 -07:00
Brendan Burns
2df5010834 Merge branch 'sdminonne-container_sidecar' 2015-09-02 10:42:08 -07:00
Salvatore Dario Minonne
f4dc0653aa adding downward api volume plugin 2015-09-01 22:23:03 +02:00
Huamin Chen
fe559f2726 implement Ceph FS volume plugin and add to e2e volume test
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-01 14:05:17 -04:00
Sreekanth Pothanis
f5da6b34ce Cinder Volume Plugin 2015-08-30 19:56:27 -07:00
k8s-merge-robot
e5ac413311 Merge pull request #13286 from nikhiljindal/validateDeployment
Auto commit by PR queue bot
2015-08-28 22:37:55 -07:00
nikhiljindal
92f373a4b6 Validate deployment 2015-08-28 12:47:33 -07:00
Prashanth B
52f7833cd3 Revert "Revert "LimitRange updates for Resource Requirements Requests"" 2015-08-28 09:26:36 -07:00
Mike Danese
8460e3913d move daemon controller to the experimental api 2015-08-27 11:47:35 -07:00
Piotr Szczesniak
6e05b9e3a3 Revert "LimitRange updates for Resource Requirements Requests" 2015-08-27 10:50:50 +02:00
derekwaynecarr
8fbe4645e3 Add fields to LimitRange object 2015-08-24 15:18:45 -04:00
k8s-merge-robot
44c76d5319 Merge pull request #12957 from smarterclayton/handle_terminating_pods
Auto commit by PR queue bot
2015-08-20 21:47:00 -07:00
Abhishek Shah
b6b8e99393 External IPs support. 2015-08-20 16:10:01 -07:00
Clayton Coleman
02dbb95447 Add TerminationGracePeriodSeconds to API
Set defaulting for pod spec
2015-08-20 11:03:38 -04: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
Robert Bailey
08e6a43c1d Revert "Merge pull request #9165 from smarterclayton/graceful"
This reverts commit 4f856b595d, reversing
changes made to d78525a83b.

Conflicts:
	pkg/kubelet/status_manager.go
2015-08-18 17:34:49 -07:00
Clayton Coleman
89f1f3b1b8 Alter graceful deletion to not use TTL
Avoid TTL by deleting pods immediately when they aren't
scheduled, and letting the Kubelet delete them otherwise.

Ensure the Kubelet uses pod.Spec.TerminationGracePeriodSeconds
when no pod.DeletionGracePeriodSeconds is available.
2015-08-18 09:08:43 -04:00
Clayton Coleman
01f3785426 Add status.podIP as a valid downward API target
Getting the public IP a container is supposed to use is O(hard),
and usually involves ugly gyrations in python or with interfaces.
Using the downward API means that the IP Kube is announcing to
other endpoints is also visible inside the container for pods to
identify themselves.
2015-08-14 17:51:55 -04:00
Jordan Liggitt
d7a50c4778 Limit field errors to a single field name 2015-08-12 14:10:26 -04:00
Kris Rousey
565189f5b8 Correcting all go vet errors 2015-08-11 13:55:37 -07:00
Satnam Singh
bee48f4ce5 Merge pull request #12035 from AnanyaKumar/requests
Add support for request
2015-08-07 14:27:34 -07:00
AnanyaKumar
d9b85652ae Add Daemon API 2015-08-06 13:15:19 -07:00
Dawn Chen
536313c82c Merge pull request #9472 from deads2k/expose-name-validation
expose common name validation methods
2015-08-06 10:51:51 -07:00
Ananya Kumar
ef1e576810 Add support for request 2015-08-05 19:00:19 -07:00
Mike Danese
8e33cbfa28 rewrite go imports 2015-08-05 17:30:03 -07:00
Manan Saraf
b2ebfeef25 Fixed empty name error and also changed tests 2015-08-04 14:09:42 -07:00
Chao Xu
18d32751fd improve the error message of update pod 2015-08-02 13:41:53 -07:00
deads2k
d73faa8272 expose common name validation methods 2015-07-27 13:12:28 -04:00
markturansky
0a0af48e51 added validation for AccessModes 2015-07-27 13:02:16 -04:00
Brendan Burns
a8f02e5472 Automatically open a firewall when creating a GCE load balancer. 2015-07-10 14:35:29 -07:00
nikhiljindal
274792d7bb Stop exposing v1beta3 by default 2015-07-01 14:38:02 -07:00
Robert Bailey
54a3ebef3c Merge pull request #10315 from nikhiljindal/invalidValue
Updating the "invalid value" error message to include the list of valid values
2015-06-26 10:46:59 -07:00
Robert Bailey
0048eae8eb Merge pull request #9965 from stevekuznetsov/skuznets/allow-https
Allowing for HTTPS Probes
2015-06-26 10:43:37 -07:00
Steve Kuznetsov
3008ff6150 Changed HTTPGetAction to allow user-defined schemes 2015-06-25 16:59:12 -04:00
nikhiljindal
3b3ee0ed77 Improving an error message 2015-06-25 13:08:09 -07: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
Satnam Singh
3591a543d1 Merge pull request #9919 from liggitt/port_protocol_validation
Validate port protocol case strictly
2015-06-19 15:18:03 -07:00
Jordan Liggitt
68a8a25494 Rename pod.spec.serviceAccount -> pod.spec.serviceAccountName for v1 2015-06-18 22:38:00 -04:00
Satnam Singh
59a96f1028 Merge pull request #9688 from liggitt/validate_pod_spec
Validate service account name in pod spec
2015-06-18 17:18:09 -07:00
derekwaynecarr
2518d8c0fc Add LimitRange range validation 2015-06-17 10:24:31 -04:00
Jordan Liggitt
2b840279d9 Validate service account name in pod spec 2015-06-16 21:09:01 -04:00
Jordan Liggitt
ee4cd972e0 Validate port protocol case strictly 2015-06-16 20:28:11 -04:00
Jason Sommer
d59a8ff7f8 Improve signature consistency for ValidateObjectMetaUpdate
Fixes #9340

Signed-off-by: Jason Sommer <jsdirv@gmail.com>
2015-06-08 02:56:38 -05:00
Tim Hockin
1aa9b0b86a Don't allow link-local Endpoints 2015-06-03 11:40:04 -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
Chao Xu
9c1153322e update PodSpec.Host to PodSpec.NodeName in /pkg/api/types.go and /pkg/api/v1beta3/types.go 2015-05-28 14:10:06 -07:00
Justin Santa Barbara
7346cc8042 Add ServiceType = NodePort; wire everything up 2015-05-22 19:14:28 -04:00
Justin Santa Barbara
e49ad95462 Mark PublicIPs as deprecated & rename to DeprecatedPublicIPs in the latest API
We need to keep them in the API so that we can round-trip between versions.
2015-05-22 19:14:27 -04:00
Justin Santa Barbara
2197c8da5a Add NodePort to ServicePort
We prevent it from being set by validation
2015-05-22 19:14:27 -04:00
Justin Santa Barbara
973c2e4819 Add Type to ServiceSpec: ClusterIP or LoadBalancer 2015-05-22 19:14:21 -04:00
Huamin Chen
4a800fd10e add rados block device(rbd) volume plugin
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-05-21 14:51:31 -04:00
Dawn Chen
0710976d43 Merge pull request #8490 from thockin/diff-proto
Allow same-hostport-different-protocol
2015-05-21 09:16:16 -07:00
Tim Hockin
cb49843ccb Merge pull request #8140 from vishh/namespace
Update Namespace names to follow DNS label format
2015-05-19 11:25:32 -07:00
Vishnu Kannan
d10af89493 Updating namespaces to be DNS labels instead of DNS names. 2015-05-19 11:09:09 -07:00
Tim Hockin
c7bf373d98 Allow same-hostport-different-protocol 2015-05-19 10:00:35 -07:00
Tim Hockin
65833e42c4 rename CapabilityType Capability 2015-05-18 17:21:30 -07:00
Tim Hockin
f66ca25d9f Rename AccessMode to PersistentVolumeAccessMode 2015-05-18 17:21:30 -07:00
deads2k
be0f2d2930 add dockercfg secret types 2015-05-18 08:25:27 -04:00
deads2k
d404a17f0a allow leading dots in secret keys 2015-05-18 08:17:58 -04:00
derekwaynecarr
8216332611 Kubelet kills a pod that exceeds ActiveDeadlineSeconds 2015-05-15 16:33:37 -04:00
Tim Hockin
2f59aa4f25 Somewhat better error messages for common formats
Clearer strings with examples.
2015-05-13 13:59:16 -07:00
markturansky
0191574f7e Bi-directional bind between pv.Spec.ClaimRef and pvc.Spec.VolumeName 2015-05-13 14:05:21 -04:00