Commit Graph

630 Commits

Author SHA1 Message Date
Deyuan Deng
c793c4f0ab Sync node status from node controller to master. 2015-01-29 23:17:15 -05:00
Yu-Ju Hong
4cb730dad5 Refactor API object fuzzer
API object fuzzer is used to randomly populate API object for testing. Similar
code of the fuzzer was duplicated in multiple files. This change refactors the
tests and moves the fuzzer to a separate file.
2015-01-29 18:14:09 -08:00
Brian Grant
0345211e0c Merge pull request #3921 from nikhiljindal/OperationClean
Some more operations code cleanup
2015-01-29 14:54:05 -08:00
Tim Hockin
d01ea11a6e Merge pull request #3856 from smarterclayton/validation_logic_needs_cleanup
Validation of ObjectMeta is inconsistently applied
2015-01-29 14:12:44 -08:00
nikhiljindal
dc92d3c7a2 Cleaning up the operations code in client 2015-01-28 21:04:16 -08:00
Brendan Burns
6bcfe4f430 Change persistentDisk to gcePersistentDisk for v1beta3 2015-01-28 14:29:53 -08:00
Eric Tune
bba01c7a54 Merge pull request #3796 from derekwaynecarr/resource_quota
Admission Control: Resource Quota
2015-01-28 13:17:08 -08:00
derekwaynecarr
0ff20c84dd Rebase errors 2015-01-28 15:09:42 -05:00
derekwaynecarr
829fa69527 Introduce a ResourceQuota object 2015-01-28 15:03:19 -05:00
Mike Danese
78f33e950a rename api.LivenessProbe to api.Probe and break out Actions 2015-01-28 11:20:44 -08:00
Clayton Coleman
a0356bca96 Unify validation logic for create and update paths
Ensure ObjectMeta is consistently validated on both create and update

Make PortalIP uncleareable
2015-01-28 13:10:37 -05:00
Clayton Coleman
5117189e03 Merge pull request #3707 from nikhiljindal/preOperations
Removing support for asynchronous server requests
2015-01-28 13:02:52 -05:00
nikhiljindal
de60600608 Making all operations synchronous 2015-01-27 18:47:56 -08:00
Satnam Singh
3a9e6d8f29 Switch to use Too Many Requests response code
Name the 429 status code
2015-01-27 14:54:30 -08:00
Clayton Coleman
72cc17b41c Omit empty quotes in message when required value field error type 2015-01-27 17:04:59 -05:00
Clayton Coleman
c6a2e574c2 Structure of BadRequest error should have Message set 2015-01-27 17:04:59 -05:00
Tim Hockin
a480794efc Tighten validation of Name and Namespace 2015-01-27 17:04:59 -05:00
derekwaynecarr
b19a8a61a8 Simplify min/max evaluation, make limitType a type 2015-01-27 16:54:50 -05:00
derekwaynecarr
4faf27e63d Validate limit.Min and limit.Max resource names using ValidateResourceName 2015-01-27 16:41:28 -05:00
derekwaynecarr
74f368f50e Modified LimitRangeItem.Kind to LimitRangeItem.Type, added example files 2015-01-27 16:41:28 -05:00
derekwaynecarr
091cbe5fa2 Add a limit range resource 2015-01-27 16:41:27 -05:00
Brian Grant
c3da4f0b19 Merge pull request #3816 from brendandburns/api2
Add NodeSelector to the PodTemplate in v1beta1.
2015-01-27 10:09:05 -08:00
Brendan Burns
33ee41090e Add NodeSelector to the PodTemplate in v1beta1 and v1beta2 2015-01-26 20:30:48 -08:00
Brendan Burns
99583fc8c5 Fix a bug in validation that was leftover from the previous way of externalizing services. 2015-01-26 13:19:27 -08:00
markturansky
131ce993c4 Added validation for annotations 2015-01-26 09:32:09 -05:00
Vishnu Kannan
c32295a180 Adding a 'Typename' strongtype for representing all compute resource types. 2015-01-23 22:17:56 +00: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
Tim Hockin
30219f8dfa Merge pull request #3664 from thockin/pull-if
Pull if
2015-01-21 13:05:28 -08:00
Tim Hockin
c729f345f0 Merge pull request #3660 from dchen1107/image
Using switch in validatePullPolicyWithDefault
2015-01-21 12:54:12 -08:00
Tim Hockin
81343aac63 Change PullPolicy constants to match 2015-01-21 12:48:56 -08:00
Tim Hockin
819803b79f Make VolumeSource not be a pointer
There's no reason for it to be a pointer.
2015-01-20 17:54:04 -08:00
Dawn Chen
cf54dcb689 Using switch in validatePullPolicyWithDefault 2015-01-20 17:41:09 -08:00
Brian Grant
dd45246150 Merge pull request #3587 from dchen1107/image
Clean up Kubernetes PullPolicy
2015-01-20 17:18:26 -08:00
Brian Grant
0b69a3f57a Merge pull request #3517 from thockin/v1b3
Rename HostDir to HostPath in v1beta3
2015-01-20 16:25:16 -08:00
Tim Hockin
60ec08db93 Rename HostDir to HostPath in v1beta3 2015-01-20 15:56:44 -08:00
Tim Hockin
b3b092b41a Merge pull request #3603 from smarterclayton/expose_type_accessor
Add TypeAccessor to api/meta for objects without Object/ListMeta
2015-01-20 14:55:43 -08:00
Clayton Coleman
5f6caaba2e Add TypeAccessor to api/meta for objects without Object/ListMeta
Adding objects that have TypeMeta (use runtime.Scheme) but do not
expose ObjectMeta/ListMeta (because they are not Kube API objects)
and wanted to get the simpler access path for in memory objects.
2015-01-20 17:37:24 -05:00
Dawn Chen
92ff4cd2b1 Remove unused helper methods for PullPolicy. 2015-01-20 11:54:22 -08:00
Dawn Chen
aec4594a8d Introduce validatePullPolicyWithDefault to validation. 2015-01-20 11:54:22 -08:00
Tim Hockin
6ff26d924c Merge pull request #3619 from smarterclayton/expose_validate_labels
Expose ValidateLabels in validation.go for reuse by other components
2015-01-20 09:11:08 -08:00
Clayton Coleman
48146e01cd Expose ValidateLabels in validation.go for reuse by other components
Label validation is common to anyone building kube resources.
2015-01-19 22:33:52 -05: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
Daniel Smith
37f5a9df07 make conversion do deep copies 2015-01-15 12:02:22 -08:00
Joe Beda
dcd00c936e Move all kubernetes to posix flags 2015-01-15 09:12:19 -08:00
derekwaynecarr
e5b550576c Forbidden should not swallow the underlying error 2015-01-15 11:22:15 -05:00
Daniel Smith
b0d9ad70de Merge pull request #3482 from lavalamp/fix
make quantity flag work with pflag package
2015-01-14 16:43:32 -08:00
Tim Hockin
1be3de895c Move util.UID to pkg/types 2015-01-14 15:22:21 -08:00
Daniel Smith
5767b41b28 make quantity flag work with pflag package 2015-01-14 15:16:53 -08:00
Daniel Smith
c13ae34b02 Merge pull request #3445 from saad-ali/fix3172
Remove CONDITION from event object completely
2015-01-14 15:03:06 -08:00
Eric Tune
88c68e0349 Merge pull request #3331 from pmorie/services
Service visibility w/in namespaces, master services, set env vars in kubelet
2015-01-14 15:01:05 -08:00
Daniel Smith
8a764c02d5 Merge pull request #3478 from thockin/uid_type
Use a strong type for UID fields
2015-01-14 14:20:22 -08:00
saadali
90dfdcecd5 Remove CONDITION from event object completely
# *** ERROR: *** Some files have not been gofmt'd.  To fix these
# errors, run gofmt -s -w <file>, or cut and paste the following:
#   gofmt -s -w pkg/kubecfg/resource_printer.go pkg/proxy/config/config.go pkg/runtime/types.go
#
# Your commit will be aborted unless you override this warning. To
# commit in spite of these format errors, delete the following line:
#   COMMIT_BLOCKED_ON_GOFMT
2015-01-14 14:17:16 -08:00
Paul Morie
fd834ae84d Pods should see services only from their own ns 2015-01-14 17:06:36 -05:00
Tim Hockin
d28b51f89f Document fields, fix presubmit 2015-01-14 14:01:18 -08:00
Tim Hockin
e86d4cd3c6 Use a strong type for UID fields 2015-01-14 13:53:43 -08:00
Sam Ghods
7845ab90f8 Upgrade from gopkg.in/v2/yaml to gopkg.in/yaml.v2 everywhere 2015-01-13 15:06:25 -08:00
Tim Hockin
2ea27c3df3 Fix wrong field check in validation 2015-01-12 14:27:34 -08:00
Clayton Coleman
a52b216324 Add MethodNotSupported error 2015-01-12 12:05:04 -05:00
Daniel Smith
c81dda5d61 improve validation error message printing 2015-01-09 13:06:24 -08:00
Tim Hockin
2a2cef84d6 Merge pull request #3351 from lavalamp/fix
Fix error messages; add tests
2015-01-09 12:07:20 -08:00
Tim Hockin
4fcd496d59 change everything to use new util/errors 2015-01-08 22:10:03 -08:00
Daniel Smith
bd7b457d9c Fix error messages; add tests 2015-01-08 17:34:53 -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
Clayton Coleman
8262c30c97 Improve serialization round trip test and add v1beta3 2015-01-08 12:44:28 -05:00
Eric Tune
c2b3d678c0 Merge pull request #3248 from derekwaynecarr/admission_control_hooks
Implement basic admission control framework
2015-01-07 16:52:49 -08:00
Daniel Smith
cc04db13d6 fix overeager find-and-replace 2015-01-07 16:38:27 -08:00
Daniel Smith
2050131b9a ParseOrDie -> MustParse; stop returning pointer 2015-01-07 15:21:35 -08:00
Daniel Smith
35f54addca Update more packages, tests, binaries for quantity
make etcd registry pass test
fix kubelet config for quantity
fix openstack for quantity
fix controller for quantity
fix last tests for quantity
wire into binaries
fix controller manager
fix build for 32 bit systems
2015-01-07 15:21:35 -08:00
Daniel Smith
0d628b3bff Make semantic deep equal public feature
* Use semantic deep equal when validating
* More test cases for deep equal
2015-01-07 15:21:34 -08:00
Daniel Smith
7f49ba0dcf Put quantity into packages
kubelet, GCE, validation, client
2015-01-07 15:21:34 -08:00
Daniel Smith
894a3e6d3f Wire resource.Quantity into api 2015-01-07 15:21:34 -08:00
derekwaynecarr
a56087cdf8 Remove client from attributes, remove admission control interface, fix-up error codes 2015-01-07 14:42:31 -05:00
Tim Hockin
ded3ef2827 Merge pull request #1185 from lavalamp/numeric
Numeric type for resources
2015-01-06 17:05:08 -08:00
Daniel Smith
cd58e49c78 remove 'i' and nasty rounding; test 2015-01-06 16:13:17 -08:00
Dawn Chen
e3c019128e Add EventSource to api to have both Component and Host information. 2015-01-06 16:08:20 -08:00
Daniel Smith
2d2df5593c Add examples & clarify comments further 2015-01-06 15:18:22 -08:00
Tim Hockin
1ec3457fc9 Beef up validation tests 2015-01-06 13:02:42 -08:00
Tim Hockin
6e8f5fea8e Fix validation for BoundPods to allow defaults
Thunking to Manifest makes a copy of the input, which is not useful for
defaulting.
2015-01-06 13:02:41 -08:00
Tim Hockin
33fcef6b42 Convert DNSPolicy wrt ContainerManifest 2015-01-06 13:02:40 -08:00
Daniel Smith
b7b2ee34de add flag helper func 2015-01-05 17:35:41 -08:00
Daniel Smith
6c6cdac0e9 Add accessor functions; round-trip test 2015-01-05 17:35:41 -08:00
Daniel Smith
18b896645c Saturation + test, also test negative numbers 2015-01-05 17:20:38 -08:00
Daniel Smith
394c9452e7 Start numeric type for resources 2015-01-05 17:20:38 -08:00
Daniel Smith
53a9d106c4 Merge pull request #3167 from thockin/affinity
Don't use pointers for session affinity
2014-12-30 17:43:47 -08:00
saadali
e8d30f019d Modify "kubectl get events" to print FieldPath so BoundPod events for the same Pod but different containers can be differentiated 2014-12-29 21:32:49 -08:00
Tim Hockin
ca27fb259c Don't use pointers for session affinity 2014-12-29 14:43:17 -08:00
Daniel Smith
998061677b Merge pull request #2909 from smarterclayton/passversiontorestmapper
Allow --api-version to properly override various default behaviors in CLI
2014-12-29 12:14:32 -08:00
Tim Hockin
652479a3b1 Add kubelet DNS flags & api disable for DNS
This adds --cluster_dns and --cluster_domain flags to kubelet.  If
non-empty, kubelet will set docker --dns and --dns-search flags based on
these.  It uses the cluster DNS and appends the hosts's DNS servers.
Likewise for DNS search domains.

This also adds API support to bypass cluster DNS entirely, needed to
bootstrap DNS.
2014-12-29 09:18:12 -08:00
Brendan Burns
9884142061 Clear node status before the validation check. 2014-12-22 11:57:31 -08:00
Clayton Coleman
8bef68d475 RESTMapper should take into account multiple versions
When a CLI command `kubectl get rc --api-version=v1beta3` is called,
the API resource name should match v1beta3, not whatever the default
RESTMapper version is.  This allows the correct resource name to be
returned ("replicationcontrollers", instead of "replicationControllers").
2014-12-22 14:46:31 -05:00
Dawn Chen
bbaff08991 Fixed #2632 2014-12-19 17:23:47 -08:00
Daniel Smith
9fee1b0503 Merge pull request #3051 from brendandburns/flake
Add a PodUnknown phase and make ListPods return even when there are errors
2014-12-19 16:45:44 -08:00
Brendan Burns
5e8490d5fe Add a PodUnknown phase and make ListPods return even when there are errors
obtaining info for some pods.
2014-12-19 15:08:48 -08:00
Brendan Burns
2e17193161 Add Host to PodSpec and add a predicate to make the scheduler work. 2014-12-18 20:12:29 -08:00
Brendan Burns
36bc3604b9 Merge pull request #2893 from brendandburns/pd3
Make it easier to update nodes, make it possible to update capacity.
2014-12-18 10:18:54 -08:00
Brendan Burns
4427672cde Merge pull request #2875 from foleymic/master
add SessionAffinity type to ServiceSpec
2014-12-17 21:53:35 -08:00
Brendan Burns
cf0b41535f Make it easier to update nodes, make it possible to update capacity. 2014-12-17 21:50:26 -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
Mike Foley
569ce87f0e Updated types API to include session affinity. …
- changed CLIENT-IP and NONE to be ClientIP and None respectively
 - updated conversions to support translating between api versions.
 - updated validations to validate session affinity type if specified.
2014-12-17 15:59:20 -05:00
Joe Beda
93ed9173e3 Merge pull request #2781 from commonlisp/master
simplify util.ErrorList by eliminating errorListInternal
2014-12-16 15:43:55 -08:00
Clayton Coleman
88715cc6ef Rename Event.Status to Event.Condition to match v1beta3 agreement
Question - should this be a phase?  Seems like no, since phase implies
defined lifecycle and this field is explicitly not defined.
2014-12-16 09:43:10 -05:00
Clayton Coleman
d9ad8cfac0 Conversions missing from v1beta1
They were in v1beta2, not sure how they got removed.
2014-12-15 16:50:05 -05:00
Clayton Coleman
dadb8431c4 Remove internal PodState in favor of internal PodStatus object 2014-12-15 16:50:05 -05:00
Clayton Coleman
787b5c488a Add PodIP and Image to v1beta3
Fixes #2900
2014-12-15 16:50:05 -05:00
Clayton Coleman
1f442d4429 Remove LivenessProbe.Type in v1beta3 2014-12-15 16:50:05 -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
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
Brendan Burns
d4b9979382 Add an api object for the kubelet, and a versioned endpoint. 2014-12-12 15:26:28 -08:00
Clayton Coleman
d6d87e1e3b Status should be a ListMeta, not ObjectMeta internally 2014-12-12 18:08:41 -05:00
Clayton Coleman
eb906f2993 PodStatus Message needs to be round-trippable 2014-12-12 18:08:41 -05: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
George Kuan
5e1fc1f4e0 Fixes #1605: make ErrorList introspectable by replacing ErrorList and
ErrorList#ToError with []error and util.SliceToError() respectively
2014-12-12 10:56:31 -08:00
Vojtech Vitek (V-Teq)
87263b4380 Remove duplicated assignment from API conversion 2014-12-12 01:37:15 +01:00
bgrant0607
ecbb6c45d0 Merge pull request #2315 from ddysher/node-status
Add node status to API object.
2014-12-11 10:19:17 -08:00
bgrant0607
2232a29af7 Merge pull request #2833 from liggitt/util_time
Use util.Time consistently in types.go
2014-12-11 09:17:50 -08:00
bgrant0607
473376b085 Merge pull request #2820 from ravigadde/master
MountPath in VolumeMount is a required field. Removing the omitempty.
2014-12-11 08:55:40 -08:00
Jordan Liggitt
51bfb50698 Use util.Time consistently in types.go 2014-12-11 11:14:25 -05:00
Deyuan Deng
0332c8d4d1 Add node status to API object (all versions). 2014-12-11 08:12:27 -05:00
Dawn Chen
5865ab750e Merge pull request #2808 from simon3z/master
api: add container's id to ContainerStatus
2014-12-10 16:30:08 -08: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
Ravi Gadde
66f21b0b8b MountPath in VolumeMount is a required field. Removing the omitempty for
json/yaml.

Removed omitempty for mountpath
2014-12-10 12:45:31 -08:00
Federico Simoncelli
4af64b8911 api: add container's id to ContainerStatus
Sometimes for external applications it is useful to correlate the pod
containers to the real docker instances.

This patch adds a new entry in the container status (containerID) which
is used to identify the instance.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2014-12-10 20:38:41 +00:00
Dawn Chen
17475cdbe7 Merge pull request #2821 from lavalamp/fix
Allow, when testing, SelfLinks to be unset.
2014-12-10 12:10:51 -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
19379b5a38 Internal rename api.Minion -> api.Node 2014-12-10 12:08:18 -05: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
Daniel Smith
e46bfcf699 Allow, when testing, SelfLinks to be unset. Kubelet now makes events in tests. 2014-12-09 17:53:42 -08:00
bgrant0607
4a9afe61da Merge pull request #2621 from brendandburns/kubecfg
Add validation back in
2014-12-09 15:10:51 -08:00
Brendan Burns
18cfac0d31 Make validation optional, handle YAML 2014-12-09 12:37:49 -08:00
Brendan Burns
c29f5db81c Revert "Revert "Add optional validation to kubecfg/kubectl.""
This reverts commit 6590c66dd4.
2014-12-09 12:37:48 -08:00
Clayton Coleman
2c27f7d332 Allow an empty service 2014-12-09 12:48:53 -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
Tim Hockin
5ecce5d60c Add util to validate namespaced names 2014-12-08 15:31:43 -08:00
Clayton Coleman
714dbf4522 Shrink runtime.TypeMeta to be equivalent to api TypeMeta
Remove unused fuzzing
2014-12-07 20:49:07 -05:00
Jordan Liggitt
22eee15fe7 Remove uint64 bitshift workaround 2014-12-04 15:00:23 -08:00
Sam Ghods
6399854240 Remove unused YAML tags and GetYAML/SetYAML methods
Unneeded after move to ghodss/yaml.
2014-12-02 16:25:28 -08:00
Sam Ghods
9a9a1e0939 Move from go-yaml/yaml to ghodss/yaml 2014-12-02 16:24:05 -08:00
Tim Hockin
89875ef09d Loosen DNS 952 for labels 2014-12-01 12:30:43 -08:00
Tim Hockin
c857dc1196 Add namespacing for label keys 2014-12-01 12:30:43 -08:00
Tim Hockin
d5a6a54391 clean up error message on labels validation errs 2014-12-01 12:30:43 -08:00
Vojtech Vitek (V-Teq)
28f5d51a5f Add Labels and Annotations to MetadataAccessor 2014-12-01 16:36:24 +01:00
Vojtech Vitek (V-Teq)
508724b1f8 meta_test should not depend on runtime.TypeMeta 2014-12-01 16:36:21 +01:00
Tim Hockin
9afeaf36ef Fix head 2014-11-26 13:48:50 -08:00
Eric Tune
585afa1bae Merge pull request #2610 from ddysher/node-namespace
Fix node namespace.
2014-11-26 13:02:21 -08:00