Commit Graph

836 Commits

Author SHA1 Message Date
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
Brian Grant
827a92316c Merge pull request #5251 from derekwaynecarr/namespace_lifecycle
Add a NamespacePhase to Namespace
2015-03-10 15:21:07 -07:00
Brian Grant
9aa744925e Merge pull request #5030 from simon3z/nodeinfo
Add support for fetching node collected information
2015-03-10 14:05:41 -07:00
Paul Morie
a486ab078f Fix selfLink issues in integration test 2015-03-10 14:40:16 -04:00
Brian Grant
a5ecfbfe42 Merge pull request #5185 from smarterclayton/ignore_creation_timestamp
Ignore changes to creation timestamp from clients on update
2015-03-10 11:21:13 -07:00
derekwaynecarr
7de138a9bb Add a NamespacePhase to Namespace 2015-03-10 14:11:54 -04:00
Brian Grant
6062e14313 Merge pull request #5220 from nikhiljindal/camelCaseFieldSelectors
Changing v1beta3 field selectors to be camelCased
2015-03-10 09:35:03 -07:00
Federico Simoncelli
644d775bc1 kubelet: retport system info in node information
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:11:02 -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
Tomek Kulczynski
243a3ae315 Change field names from cidr to podCIDR in json 2015-03-10 12:48:34 +01:00
Justin Santa Barbara
5d36d3cdbe Change cloud provider CreateTCPLoadBalancer to return endpoint as string
Some load balancers (particularly AWS ELB) define the public endpoint
as a hostname (instead of using IP addresses).

This is a partial fix for #5224; there will also be some proxy work.
2015-03-09 20:35:13 -07:00
nikhiljindal
916ca9cc68 Changing v1beta3 field selectors to be camelCased 2015-03-09 18:01:01 -07: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
Alex Mohr
37bfb0d7cf Merge pull request #5159 from brendandburns/coverage
Expand test coverage in master.
2015-03-09 13:26:37 -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
Jeff Lowdermilk
d8bbda2558 Merge pull request #5016 from brendandburns/kubecfg
Differentiate between server error messages and client error messages in kubectl
2015-03-09 12:29:51 -07:00
Daniel Smith
2a7be5619a Merge pull request #5116 from justinsb/skip_duplicate_node_address
Don't allow duplicate values in NodeAddresses
2015-03-09 11:59:54 -07:00
Clayton Coleman
42ff28c1a2 Merge pull request #5150 from vishh/issue_3628_1
Add json description to v1beta3 API.
2015-03-09 14:38:23 -04:00
Rohit Jnagal
8798b0ae14 Merge pull request #5158 from thockin/use_fuzz_no_custom
Use new gofuzz features
2015-03-09 10:13:46 -07:00
Clayton Coleman
d016f478e0 Ignore changes to creation timestamp from clients on update
CreationTimestamp is not an authoritative field (like UID) so mismatches
can be safely ignored.
2015-03-09 12:04:35 -04:00
Tim Hockin
0b888e8673 Make testing service validation easier
Part of multi-port services.

If people like this, we could start to apply this pattern elsewhere.

TL;DR: don't redefine objects over and over changing one thing each
time.  Instead provide a func that mutates a base object to test facets
of validation.  Much easier to read and to update.
2015-03-08 21:41:37 -07: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
Brendan Burns
f505a33998 Differentiate between server error messages and client error messages in kubectl 2015-03-07 11:39:23 +01:00
Tim Hockin
fd1e49ce2f Use new gofuzz features 2015-03-07 00:04:14 -08:00
Vishnu Kannan
28aef4ba53 Add json description to v1beta3 API. 2015-03-06 23:53:35 +00:00
Brian Grant
a858c7423e Merge pull request #5070 from vishh/issue_3628
Adding description to some of the v1beta3 objects.
2015-03-06 14:49:11 -08:00
Brian Grant
f557837d43 Merge pull request #5066 from vmarmol/man
Adding links to relevant docs from API types.
2015-03-06 14:46:43 -08:00
Vishnu Kannan
bd83093b0b Adding description to some of the v1beta3 objects. 2015-03-06 21:50:50 +00:00
Daniel Smith
b0f49449e1 Merge pull request #4985 from thockin/gofuzz
Update gofuzz dep
2015-03-06 10:19:01 -08:00
Tim Hockin
ca265c5705 Merge pull request #4898 from gmarek/client2
Loosen label and annotation validation and related tests
2015-03-06 09:14:24 -08:00
Tim Hockin
f9e2df3a10 Define semantic equal for time 2015-03-06 08:21:39 -08:00
Tim Hockin
b3304c49ad Use deep spew in serialization test & go obj diff 2015-03-06 08:21:10 -08:00
Brendan Burns
2700871b04 Merge pull request #5013 from smarterclayton/misc_fixup
Small cleanups to a number of client behaviors
2015-03-06 15:41:34 +01:00
Brendan Burns
de669b5435 Merge pull request #5058 from bprashanth/resourceVersion_doc
Clarify resourceVersion documentation
2015-03-06 15:41:12 +01:00
Brendan Burns
2263d86a7b Merge pull request #5073 from yujuhong/immutable
v1beta1/v1beta2: fields that cannot be updated are marked immutable
2015-03-06 15:40:43 +01:00
gmarek
bb8a4f5ed3 apply comments 2015-03-06 08:23:22 +01:00
gmarek
726a5af075 Loosen label and annotation validation and related tests 2015-03-06 08:23:22 +01:00
Daniel Smith
3ef3777192 Make unexported fields panic (informatively)
...Also fix some incorrect calls to semantic.DeepEqual, and a bug where
it returned true incorrectly.
2015-03-05 21:40:37 -08:00
Prashanth Balasubramanian
1ed3f7ffcd Clarify documentation around resourceVersion 2015-03-05 20:57:22 -08:00
Yu-Ju Hong
823ea36cb1 v1beta1/v1beta2: fields that cannot be updated are marked "cannot be udpated" 2015-03-05 18:05:13 -08:00
Justin Santa Barbara
bf031fb082 Don't allow duplicate values in NodeAddresses 2015-03-05 16:40:28 -08:00
Brian Grant
4624d116f3 Merge pull request #5061 from thockin/docs1
Better docs for Services and public IPs.
2015-03-05 11:52:38 -08:00
Brian Grant
9fcb48cab6 Merge pull request #4434 from ddysher/node-hostip
Node addresses
2015-03-05 10:33:15 -08:00
Tim Hockin
af37dc0e16 Better docs for Services and public IPs.
Fixes #2738
2015-03-04 22:13:57 -08:00
Tim Hockin
4cb46825f2 Fix VolumeSource inline in JSON 2015-03-04 15:53:32 -08:00
Victor Marmol
c422213f54 Adding links to relevant docs from API types.
Partially addresses #3606.
2015-03-04 15:12:09 -08:00
Deyuan Deng
9b0af8df63 Node addresses 2015-03-04 16:47:31 -05:00
Brian Grant
ce908368a8 Merge pull request #5053 from yujuhong/readonly
v1beta1/v1beta2: consistent description for all read-only fields
2015-03-04 13:22:13 -08:00
Yu-Ju Hong
ea1c5a7ec1 v1beta1/v1beta2: consistent description for all read-only fields
Some fields are populated by system on creation. Such fields should have
consistent description indicating that this is read-only.
2015-03-04 13:08:19 -08:00
Brendan Burns
fb90b56bf6 Embed VolumeSource in v1beta3 and internal. 2015-03-04 02:25:40 -08:00
Clayton Coleman
bf4ab78ce9 Stop round trip testing in latest 2015-03-03 21:14:56 -05:00
Brian Grant
841b6f6970 Merge pull request #4936 from thockin/plural_24_default_dest_port
Change the v1b3 default for service ContainerPort
2015-03-03 11:01:01 -08:00
Brian Grant
fca9fd68c7 Merge pull request #4779 from smarterclayton/status_endpoints
Minimal status mutation change
2015-03-03 11:00:02 -08: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
c4822dc060 Revert "Revert "Adding converter functions to convert field label selectors to internal version before matching""
This reverts commit 5f35a67002.
2015-03-02 15:00:09 -08:00
Clayton Coleman
0ac49d77a0 TCPSocket could not be used as it was not checked in validation
Attempting to use it gave the error "must register one handler".
Added more tests for it.
2015-03-02 15:27:11 -05:00
Zach Loafman
4937008ae0 Revert "TCPSocket could not be used as it was not checked in validation" 2015-03-02 11:14:27 -08:00
Brendan Burns
c7cbc5c991 Merge pull request #4883 from smarterclayton/fix_tcpsocket_validation
TCPSocket could not be used as it was not checked in validation
2015-03-02 10:53:48 -08:00
Brendan Burns
fe973461f5 Merge pull request #4916 from thockin/plural_21_endpoints
Rename type Port to ContainerPort
2015-03-02 10:53:32 -08:00
Brendan Burns
3168f165ab Merge pull request #4927 from thockin/plural_22_endpoints
Add defaults for HTTGetAction.Path & test actions
2015-03-02 10:52:55 -08:00
Tim Hockin
532c39c336 Add defaults for HTTGetAction.Path & test actions
The comment says optional - this makes it optional.  Test handler actions.
2015-03-01 21:23:18 -08: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
Clayton Coleman
d3a5a48d00 TCPSocket could not be used as it was not checked in validation
Attempting to use it gave the error "must register one handler".
Added more tests for it.
2015-03-01 22:31:57 -05:00
Zach Loafman
5f35a67002 Revert "Adding converter functions to convert field label selectors to internal version before matching" 2015-02-28 11:42:49 -08:00
Tim Hockin
ea548b8260 Rename type Port to ContainerPort
Sadly I had to do this by hand - I just could not get gorename to fix up
users of it.
2015-02-27 21:05:59 -08:00
nikhiljindal
48e7945f65 Versioning the field selectors 2015-02-27 16:10:59 -08:00
Federico Simoncelli
a450da4fd0 cloudprovider: add instance id to NodeSpec
Sometimes for external applications it is important to identify the
cloud instance of the nodes. Until this patch there was no contract
that the node name returned by List was also the unique identifier of
the cloud instance. This new API ensures that an external application
can reliably retrieve the relevant instance id of the nodes.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-02-26 20:52:12 +00:00
Mike Danese
5267127af1 api: rename conditionkind -> conditiontype 2015-02-23 22:13:21 -08:00
Daniel Smith
650f6cb826 Revert "Multi-port Endpoints" 2015-02-23 13:53:21 -08:00
Tim Hockin
eed36455a7 Merge pull request #4653 from thockin/secret_fixups
Secrets fixups
2015-02-23 13:49:19 -08:00
Daniel Smith
502f040129 Merge pull request #4712 from thockin/plural_30_endpoints
Multi-port Endpoints
2015-02-23 13:48:37 -08:00
Daniel Smith
dec46ad9cb Merge pull request #4702 from smarterclayton/always_return_endpoints
Endpoints should not be omitempty for ease of client use
2015-02-23 13:47:46 -08:00
Tim Hockin
3e7248f0f4 comments on base64-ness of secrets 2015-02-23 12:40:06 -08:00
Tim Hockin
607b736a3f Rename volume source types to be consistent. 2015-02-23 12:39:57 -08:00
Tim Hockin
8bdfc352ce minor fixups as I review secrets 2015-02-23 12:39:47 -08:00
Tomek Kulczynski
09c955f94e Add node's IP range cidr to NodeSpec 2015-02-23 19:47:50 +01:00
Clayton Coleman
7a3405fded Endpoints should not be omitempty for ease of client use 2015-02-23 13:18:31 -05:00
Tim Hockin
160f288832 Implement multi-port Endpoints
This is a part of multi-port services.
2015-02-22 09:35:12 -08:00
Tim Hockin
e0fd83096c Rename type Port to ContainerPort
Sadly I had to do this by hand - I just could not get gorename to fix up
users of it.
2015-02-21 22:26:38 -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
derekwaynecarr
3d6085e692 Add doc in types 2015-02-20 16:48:28 -05:00
Victor Marmol
51941b0974 Merge pull request #4668 from markturansky/no_list_get
Remove unused helper method from ResourceList
2015-02-20 09:54:05 -08:00
markturansky
1faa2fcea7 removed unused helper method from ResourceList 2015-02-20 11:29:30 -05:00
Andy Goldstein
5bd0e9ab05 Add streaming command execution & port forwarding
Add streaming command execution & port forwarding via HTTP connection
upgrades (currently using SPDY).
2015-02-20 09:57:02 -05: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
Brian Grant
1ba1c1c4a8 Merge pull request #4541 from yujuhong/lies
Remove obsolete comments in types.go
2015-02-18 17:05:56 -08:00
Yu-Ju Hong
be4ca11f38 Remove obsolete comments in types.go 2015-02-18 16:14:30 -08:00
Eric Tune
af67829eca Merge pull request #4515 from pmorie/secrets_wip
Secret volume plugin iteration 1
2015-02-18 15:57:31 -08:00
Mike Danese
dd1548347d add descriptions to PodCondition struct tags 2015-02-18 13:29:56 -08:00
Paul Morie
a42ff94c8f Add secret volume plugin and e2e test 2015-02-18 16:27:44 -05:00
Paul Morie
fb001ada21 Secret API resource 2015-02-18 11:54:56 -05:00
Brian Grant
76edde3c23 Merge pull request #4451 from mikedanese/validate-probe
add validation for api.Probe
2015-02-17 09:56:52 -08:00
Brian Grant
d37977feb2 Merge pull request #4465 from smarterclayton/allow_validation_error_filtering
Allow ValidationErrorList to be filtered
2015-02-17 09:44:11 -08:00
Brian Grant
2fe026e5a9 Merge pull request #4466 from mikedanese/probe-defaults
move api.Probe timeout default to central defaults
2015-02-17 09:43:30 -08:00
Mike Danese
f7df9b9d37 add validation for api.Probe 2015-02-16 21:56:03 -08:00
Clayton Coleman
619f3a6804 Allow ValidationErrorList to be filtered
Expose basic filters on an error list to ignore certain error types.
This can be used by client code to ignore errors on common schema
types like "metadata.name" or the NotFound error type.
2015-02-16 17:45:54 -05:00
Clayton Coleman
72da3b4424 Move rest.Pods to pkg/registry/pod/rest.go 2015-02-16 10:09:28 -05:00
Mike Danese
4ba8ecd1fb move api.Probe timeout default to central defaults 2015-02-15 23:44:55 -08:00
Clayton Coleman
c977a45864 Merge pull request #4419 from smarterclayton/expand_generic_resources
Expand the generic registry
2015-02-13 13:53:20 -05:00
Clayton Coleman
abe8adc2e2 Expose new REST strategy methods for Pods 2015-02-13 12:12:50 -05:00
Jordan Liggitt
083ce268e0 Put user in context, map requests to context above resthandler layer 2015-02-12 20:58:04 -05:00
Jordan Liggitt
ec66e5147e Add user helper methods to context 2015-02-12 20:44:20 -05:00
Saad Ali
cdb93a7c46 Merge pull request #4387 from smarterclayton/rename_try_again_later
Rename TryAgainLater status code to ServerTimeout
2015-02-12 12:23:57 -08:00
Clayton Coleman
c24f4a24b4 Rename TryAgainLater status code to ServerTimeout 2015-02-12 15:01:12 -05:00
Alex Robinson
60ab9904d5 Merge pull request #4371 from a-robinson/port
Add extra explanation of the purpose of service's ContainerPort field to the API comments.
2015-02-12 11:45:45 -08:00
Alex Robinson
3301f19a8a Add extra explanation of the purpose of service's ContainerPort field to
the API comments. We were asked about this in issue #4332.
2015-02-12 19:37:58 +00:00
Saad Ali
42f04587d0 Merge pull request #4363 from yujuhong/defaulting_tests
Add defaulting tests for API v1beta2 and v1beta3
2015-02-12 07:56:23 -08:00
Yu-Ju Hong
4bce52a5f6 Add defaulting tests for API v1beta2 and v1beta3
This commit also add more tests in v1beta1/defaults_test.go
2015-02-11 16:08:52 -08:00
Clayton Coleman
79cb93002e Remove asynchronous channel on RESTStorage interfaces 2015-02-11 16:26:07 -05:00
Clayton Coleman
d167c11b59 Remove layers of indirection between apiinstaller and resthandler
Make the RESTHandler feel more go-restful, set the stage for adding
new types of subresource collections.
2015-02-11 16:26:06 -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
derekwaynecarr
0bd0e12bbc Add support for Namespace as Kind
Add example for using namespaces
2015-02-10 09:50:50 -05:00
derekwaynecarr
151be7773c Rename api.Namespace to api.NamespaceValue to avoid name collision 2015-02-10 09:44:29 -05:00
Mike Danese
27dfebed98 api changes to support readiness. 2015-02-09 18:27:46 -08:00
Brian Grant
e27d534b87 Merge pull request #4262 from vishh/api_resources
Rename ResourceRequirementSpec to ResourceRequirements.
2015-02-09 17:26:05 -08:00
Vishnu Kannan
d0524d4778 Rename ResourceRequirementSpec to ResourceRequirements. 2015-02-09 23:19:38 +00:00
Deyuan Deng
55b9944cfe Remove pods from failed node 2015-02-09 17:50:24 -05:00
Marek Grabowski
72a066a992 Add more information to Validator error messages. 2015-02-09 18:07:09 +01:00
Brendan Burns
31ce2a9411 Adjust replication controller validation to be more flexible about
read/write volumes.
Update docs to reflect reality as it is implemented.
2015-02-06 14:58:21 -08:00
Dawn Chen
05de54249f Merge pull request #4191 from simon3z/master
api: add image's id to ContainerStatus
2015-02-06 09:35:44 -08:00
Federico Simoncelli
e01df69565 api: add image's id to ContainerStatus
Sometimes for external applications it is important to identify
exactly what images are running. Since tags can be moved to point
to newer builds this information can be used to identify old images
running.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-02-06 09:01:14 -05:00
saadali
79cbcf918e Modify Event struct to allow compressing multiple recurring events in to a single event.
# *** ERROR: *** Some API files are missing the required field descriptions
# Add description tags to all non-inline fields in the following files:
#   pkg/api/v1beta1/types.go
#   pkg/api/v1beta2/types.go
#
# Your commit will be aborted unless you fix these.
#   COMMIT_BLOCKED_ON_DESCRIPTION
2015-02-05 21:50:29 -08:00
Brendan Burns
8e6f5c7201 Merge pull request #3593 from commonlisp/master
Add timeouts to HealthChecks and retry checks
2015-02-05 15:40:22 -08:00
Brendan Burns
50e855953f Merge pull request #4131 from a-robinson/validate
Add a few extra test cases for API validation of labels
2015-02-05 15:37:45 -08:00
Brendan Burns
b08bd8671f Merge pull request #4157 from saad-ali/updateEventApi
Add "Update Event" to Kubernetes API
2015-02-05 14:50:48 -08:00
Brian Grant
251348122c Merge pull request #4136 from yujuhong/fixvalidationtests
Fix tests in validation_test
2015-02-05 07:07:16 -08:00
George Kuan
e8c33b7916 Add timeouts to HealthChecks and retry checks
Fixes issue #3532. Added timeouts for HTTP and TCP checks
and enabled kubelet/probe to kubelet#maxRetries times
before declaring Failure.

Added Probe.TimeoutSecs to API

Probe variants now check container.LivenessProbe.TimeoutSeconds
Also added a test for timeouts in http_test.go.
2015-02-05 06:04:45 -08:00
saadali
a41f520bf0 Add "Update Event" to Kubernetes API 2015-02-05 00:07:51 -08:00
nikhiljindal
19f7ecf31b Deleting the API objects related to /operations 2015-02-04 20:50:45 -08:00
Yu-Ju Hong
283919e8b1 Fix tests in validation_test
Some tests expect the error cases to fail for a specific reason, but they could
fail for other reasons and still pass. This caused some changes to break the
tests without noticing the breakage. Example are the recent defaulting PR

This change fixes such tests and also updates some obsolete tests.
2015-02-04 15:44:46 -08:00
Alex Robinson
6bb374ca54 Add a few extra test cases for API validation of labels that would have
caught a bug that was in past versions. Also, copy the label key format
requirements from the API types.go comments into the labels doc.
2015-02-04 22:24:46 +00: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
Tim Hockin
411666decb Get rid of ServiceSpec.ProxyPort
As far as I know, nobody uses it.  It was replaced by PublicIPs.  If I were
being very polite I would leave it in internal, but since I am 99.99% sure
nobody uses it, I am cutting it.  Let's argue about it.
2015-02-03 22:45:00 -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
Tim Hockin
1ddb68d8d7 Sketch: a third take on defaulting values 2015-02-02 22:35:58 -08:00
Brian Grant
0474c49b07 Merge pull request #4025 from ironcladlou/replica-annotations
Backport annotations to PodTemplateSpec
2015-02-02 12:54:23 -08:00
Brian Grant
efd71793f3 Merge pull request #3998 from jbeda/hyperkube-servers2
Convert scheduler and controller-manager to hyperkube
2015-02-02 12:33:55 -08:00
Dan Mace
3d7f5cc642 Backport annotations to PodTemplateSpec
Backport annotation support to v1beta1 and v1beta2 PodTemplateSpec. This
allows ReplicationController users to specify annotations for Pods in
addition to labels.
2015-02-02 15:26:32 -05:00
Clayton Coleman
1588970ec4 Turn 409 into 500 Try Again Later when using generateName
If a client says they want the name to be generated, a 409 is
not appropriate (since they didn't specify a name). Instead, we
should return the next most appropriate error, which is a 5xx
error indicating the request failed but the client *should* try
again.  Since there is no 5xx error that exactly fits this purpose,
use 500 with StatusReasonTryAgainLater set.

This commit does not implement client retry on TryAgainLater, but
clients should retry up to a certain number of times.
2015-02-02 14:46:25 -05:00
Clayton Coleman
e485dc93ca Minions should have common logic with create
TODO: disable / document generate names for cluster scoped resources.
2015-02-02 14:46:25 -05:00
Clayton Coleman
0a87f0332b Add name generation to services 2015-02-02 14:46:25 -05:00
Clayton Coleman
5603714df8 Use name generation on pods via replication controllers
The generated name is '<controllerName>-%s', unless controllerName-
would be long enough to cause a validation error.
2015-02-02 14:44:53 -05:00
Clayton Coleman
a7c9a12286 Add name generation and normalize common create flows
Adds `ObjectMeta.GenerateName`, an optional string field that defines
name generation behavior if a Name is not provided.

Adds `pkg/api/rest`, which defines the default Kubernetes API pattern
for creation (and will cover update as well). Will allow registries
and REST objects to be merged by moving logic on api out of those places.

Add `pkg/api/rest/resttest`, which will be the test suite that verifies
a RESTStorage object follows the Kubernetes API conventions and begin
reducing our duplicated tests.
2015-02-02 14:44:53 -05:00
Brian Grant
6e415f760b Merge pull request #4017 from smarterclayton/relax_annotation_validations
Slightly relax annotation validation
2015-02-02 11:42:38 -08:00
Alex Robinson
ce164f67fd Merge pull request #3841 from vishh/api_resources
Adding an extensible resource spec to the API.
2015-02-02 11:24:13 -08:00
Joe Beda
bbb4479166 Convert controller-manager to hyperkube. 2015-02-02 10:01:36 -08:00
derekwaynecarr
a928be56ba Code review comments 2015-02-02 11:01:08 -05:00
derekwaynecarr
a216cb747c Fix logic issue in register resource handlers not doing list across all namespaces in v1beta3 2015-02-02 10:26:19 -05:00
derekwaynecarr
4c33e36a88 Plumb restmapper properly through apiserver and tests 2015-02-02 10:26:19 -05:00
derekwaynecarr
71ec444d63 Make a RESTMapper scope aware 2015-02-02 10:26:19 -05:00
Clayton Coleman
b30173658f Slightly relax annotation validation
The more aggressive validation on annotations broke openshift (and
backwards compat for our data).  This change relaxes to allow mixed
case so we can continue working in the short term, try to see if we
can agree on relaxation, and if we can't, apply the stronger
validation here.
2015-02-01 19:03:04 -05:00
Vishnu Kannan
5e36f63f8b Adding ResourceRequirementSpec to v1beta1, v1beta2, and v1beta3 APIs. The old resource
quantities 'CPU' and 'Memory' will be preserved until support for v1beta1 and v1beta2 APIs are
dropped.
Improved resource validation in the process.
2015-02-01 02:19:55 +00:00
Satnam Singh
3c3b016b8b Merge pull request #3917 from yujuhong/dedup
Refactor API object fuzzer
2015-01-30 08:07:25 -08:00
Brian Grant
ee3470def5 Merge pull request #2933 from hustcat/cap-add-drop
Add docker's add/drop capabilites
2015-01-30 06:43:49 -08:00
Ye Yin
248624fc1f Add docker's add/drop capabilites 2015-01-30 15:09:31 +08:00
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