Commit Graph

57 Commits

Author SHA1 Message Date
Dr. Stefan Schimanski 36b2f4560f deepcopy: add interface deepcopy funcs
- add DeepCopyObject() to runtime.Object interface
- add DeepCopyObject() via deepcopy-gen
- add DeepCopyObject() manually
- add DeepCopySelector() to selector interfaces
- add custom DeepCopy func for TableRow.Cells

Kubernetes-commit: 39d95b9b065fffebe5b6f233d978fe1723722085
2017-07-19 03:49:08 +00:00
jianglingxia 57a29126d7 amend the comment
Kubernetes-commit: fe13072443289a87ac2bf89fa7818f0ba8a5c64d
2017-07-19 03:49:08 +00:00
Clayton Coleman ec4f695076 generated: bazel / godeps
Kubernetes-commit: c73622108ccd285b245cf9fe2dc218a47398d31d
2017-07-16 04:08:42 +00:00
Dr. Stefan Schimanski 5c33fc4de4 apimachinery: remove unneeded GetObjectKind() impls
Kubernetes-commit: da3322c2d93671b7cbff9b090dd5e1ce9984130e
2017-07-16 04:08:42 +00:00
Cao Shufeng 7723f2ca07 remove extra WriteHeader function
The deleted two functions will be called later in the function
SerializeObject(). Not necessary to call them twice.

Kubernetes-commit: f41eb67798c574b531b5dd542d3284604b142801
2017-07-16 04:08:41 +00:00
Clayton Coleman bcc0d0a6d0 Unify generic proxy code in apimachinery
Make the utility package truly generic, consolidate all generic proxy in
apimachinery.

Kubernetes-commit: edc12aafe2fbfe3475bdf03c34ffa26cc4322673
2017-07-16 04:08:41 +00:00
Clayton Coleman c521c8f6b5 Record 429 and timeout errors to prometheus
Allows gathering of load being shed.

Kubernetes-commit: 2e33a2f0bc8ac82aecadcb19cf6e41259454d182
2017-07-16 04:08:41 +00:00
Cao Shufeng 6040aeb60d Fix invalid Content-Type for 403 error
https://github.com/kubernetes/kubernetes/pull/47384 makes 403 errors
return Status Object. How the Content-Type is still "text/plain"
This change fix it.

Kubernetes-commit: 36e0a5ed14ae0fb9fd88980f0fce57d076216e2e
2017-07-06 23:56:07 +00:00
Shiyang Wang 276c240fae Fix 401/403 apiserver errors do not return 'Status' objects
Kubernetes-commit: 3d6479f7216dcb61e56ab6dd53fad7176930645d
2017-07-05 23:59:23 +00:00
Kyâne Pichou a0b4bc5639 Fix a typo in deletion log of apiserver
Kubernetes-commit: 7adf8d8cac89eb68bc10a58827ef08e74e047913
2017-07-01 08:39:43 +00:00
Mikhail Mazurskiy 7039fe1e17 Refactor unstructured converter
Kubernetes-commit: dc1ee493a29251492403e4282b5df3e897de2214
2017-06-30 08:44:46 +00:00
Jordan Liggitt 3d01cde9c2 Fix rawextension decoding in update
Kubernetes-commit: a536ee3615e15954c63b0ccea0885837e2846e1e
2017-06-22 04:00:53 +00:00
Tim St. Clair 64014c6e25 audit: Fill in full ObjectRef, include in LevelMetadata
Kubernetes-commit: 28beb4572e676b9073f400fb6ccf2720381a41d0
2017-06-14 20:44:08 +00:00
Dr. Stefan Schimanski e10c78ea7c apiserver: return BadRequest 400 for invalid query params
Kubernetes-commit: 4846c0d16700bb7cb3c3e02fa3919f2de36d4685
2017-06-13 20:47:31 +00:00
Clayton Coleman 5fa08b8c5e Allow initialization of resources
Add support for creating resources that are not immediately visible to
naive clients, but must first be initialized by one or more privileged
cluster agents. These controllers can mark the object as initialized,
allowing others to see them.

Permission to override initialization defaults or modify an initializing
object is limited per resource to a virtual subresource "RESOURCE/initialize"
via RBAC.

Initialization is currently alpha.

Kubernetes-commit: 331eea67d8000e5c4b37e2234a90903c15881c2f
2017-06-13 20:47:30 +00:00
Clayton Coleman afe291fde8 Refactor printers to support rendering as a Table
Return tables from the server.

Kubernetes-commit: 7ce63eb608cdf95df429d6138ccf8dbf8b47a740
2017-06-13 20:47:29 +00:00
Clayton Coleman e1228ec319 Expose a default Table and partial output via Accept headers
All generic registries expose metadata output, and refactor endpoints to
allow negotiation to handle those responses. Add support for
PartialObjectMetadata being returned for objects as well.

Kubernetes-commit: f203e42cb98ed4bac7ad8ebbed717d3bd42f55b6
2017-06-13 20:47:29 +00:00
Clayton Coleman 2f49bbbf91 Subresources are not included in apiserver prometheus metrics
Subresources are very often completely different code paths and errors
generated on those code paths are important to distinguish.

Kubernetes-commit: ad431c454c1306fdcc2134a3626444984d350f46
2017-06-13 20:47:28 +00:00
Tim St. Clair 78e974150d Append X-Forwarded-For in proxy handler
Kubernetes-commit: 6875e953782076237a0c20facc05eeb5d49aa161
2017-06-13 20:47:28 +00:00
Dr. Stefan Schimanski 94ea219615 Update bazel
Kubernetes-commit: 9fdc36a47ada0bc34ee53b68edd085d368ed9012
2017-06-13 20:47:28 +00:00
Dr. Stefan Schimanski ec8d130fa7 audit: wire through non-nil context everywhere
Kubernetes-commit: ce942d19c378ecd335e7e158e30cdc184f9d6184
2017-06-13 20:47:28 +00:00
Dr. Stefan Schimanski f7d766d92d audit: add audit event to the context and fill in handlers
Kubernetes-commit: 0b5bcb021932355b3ff7c2b45fb579f4adad84bf
2017-06-13 20:47:28 +00:00
Wojciech Tyczynski 1d0b329280 Pass RequestInfo to GenerateLink
Kubernetes-commit: b4018f7da18f1e61e59c5c48cae4178db2714f85
2017-06-13 20:47:27 +00:00
Wojciech Tyczynski d82b8bc329 Pass Context to GenerateLink
Kubernetes-commit: 25f0fe1adb199697565487b9dfacc4ed8ecdccbb
2017-06-13 20:47:27 +00:00
Jordan Liggitt 781a66f4fb Return MethodNotSupported when accessing unwatcheable resource with ?watch=true
Kubernetes-commit: da8ae29620811f3dc058e0e665d402a208a1fe6c
2017-06-13 20:47:27 +00:00
yupengzte e701e40544 format re
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>

Kubernetes-commit: 9eee70656fc411029c91edafdbfa327eb0736528
2017-05-20 17:28:13 +00:00
Dr. Stefan Schimanski 2a11524990 apiserver: no Status in body for http 204
Kubernetes-commit: 8902dae1c4e12a0b5933beb965b148b4150c970d
2017-05-17 17:27:53 +00:00
nikhiljindal 404503d3e6 Updating generic registry to return UID while deleting the object
Kubernetes-commit: 44fc88cecd5ab175fe7907eb7b975f0a00cb2305
2017-05-16 17:27:51 +00:00
Chao Xu 3ffeae2ff7 hack/update-bazel.sh
Kubernetes-commit: 14045d253d11c801ad94f0928cb9b13a224ee18f
2017-05-13 17:27:43 +00:00
Chao Xu e46eb82a82 remove invocation of k8s.io/client-go/pkg/api/install
change import of client-go/api/helper to kubernetes/api/helper

remove unnecessary use of client-go/api.registry

change use of client-go/pkg/util to kubernetes/pkg/util

remove dependency on client-go/pkg/apis/extensions

remove unnecessary invocation of k8s.io/client-go/extension/intsall

change use of k8s.io/client-go/pkg/apis/authentication to v1

Kubernetes-commit: c354076aa41e3cf417b291d5f0eff2b70395ac30
2017-05-13 17:27:42 +00:00
Ryan Hitchman 4e16eae82b Escape "<>&" in apiserver errors to avoid triggering vulnerability scanners.
Simple XSS scans might fetch /<script>alert('vulnerable')</script>, and
fail when the response body includes the script tag verbatim, despite
the headers directing the browser to interpret the response as text.

This isn't a real vulnerability, but it's easier to fix this here than
it is to fix the scanners.

Kubernetes-commit: dd4bb1213d8447632fa651195980cbfae2546fb3
2017-05-12 17:30:09 +00:00
deads2k 2b31ba8b9c separate discovery from the apiserver
Kubernetes-commit: e099f5eee60ad32661d28a2eda9d615ac25ba9a4
2017-05-02 20:36:05 +00:00
Dr. Stefan Schimanski 21f84e3d21 apiserver: split endpoint tests from client-go
Kubernetes-commit: 67ca42b2d7e9efb5701618fb3d7faa62c53101c5
2017-05-02 20:36:05 +00:00
deads2k 63fa51033e build external watch event so simple encoders can encode
Kubernetes-commit: f53c9a7e59fe71c038cf727ac2072e5eb9efc6b9
2017-04-28 20:36:29 +00:00
Anthony Yeh 9841cf11a1 PATCH: Fix erroneous meaningful conflict for numeric values.
The wrong json package was used, resulting in patches being unmarshaled
with numbers as float64 rather than int64.
This in turn confused HasConflicts() which expects numeric types to match.

The end result was false positives of meaningful conflicts, such as:

```
there is a meaningful conflict (firstResourceVersion: "8517",
currentResourceVersion: "8519"):
 diff1={"metadata":{"resourceVersion":"8519"},"spec":{"replicas":0},"status":{"conditions":null,"fullyLabeledReplicas":null,"replicas":0}}
, diff2={"spec":{"replicas":0}}
```

Kubernetes-commit: 1ab6a33db486adc060e1b63eecbdc06aabdde1f6
2017-04-24 20:36:05 +00:00
Cao Shufeng 32da3a6527 refactor code from restful namer
Some codes are replaced because they will never run.

Kubernetes-commit: 939b962975aabcb1587f40b0eb05a30d05168cc4
2017-04-24 20:36:05 +00:00
gmarek 94dd05e8db Fix traces for get requests
Kubernetes-commit: 2a49281b55278bb6932e8862304cff0becaaabf3
2017-04-19 20:35:36 +00:00
Mike Danese 2aab760a2a autogenerated
Kubernetes-commit: a05c3c0efdc5822049e34b1a5a1ee259c5fb1906
2017-04-15 20:35:23 +00:00
deads2k 540c5cf18e remove dependency on gorestful for rest handling
Kubernetes-commit: c5e2f7c229d8194386de97df7ff6c1b0f71be4c7
2017-04-11 20:35:21 +00:00
deads2k d3546820d7 remove go-restful from namer for rest handling
Kubernetes-commit: da27957390b99c3053922e75f220a8b09c20d7f6
2017-04-10 20:35:11 +00:00
Cao Shufeng d08e3dad61 Fix empty RBAC Forbidden message
Kubernetes-commit: 30844541d55b302b06bd85f12d8cf0193e7e4240
2017-04-08 20:35:19 +00:00
Jordan Liggitt fa876f6773 Fix original object mutation on patch retry
Kubernetes-commit: c415e4aeabe5e5514dcdbf2c01c533533c25f4c1
2017-04-06 20:35:16 +00:00
Dr. Stefan Schimanski 18fcdcc57b k8s.io/apiserver: make maxRetryWhenPatchConflicts public
Kubernetes-commit: be6be1370b5d1c9b6269c24f663426e3bac93c72
2017-03-31 20:37:15 +00:00
Jordan Liggitt 8543f589d2 Ensure patched objects are defaulted correctly
Kubernetes-commit: 464db160b410b22dba53af6d11fa097f0fa4fd6b
2017-03-18 19:56:09 +00:00
ymqytw 7306f452f2 switch to k8s json to avoid number conversion issue
Kubernetes-commit: b29f4c26d799dca6606b45a0e03f7f931abcdefc
2017-03-18 19:56:09 +00:00
deads2k e8086d93fd show patch error as string not byte slice
Kubernetes-commit: ea887557d36cec45744c11019aa3fd64d44f24f7
2017-03-18 19:56:09 +00:00
Clayton Coleman 55e799bbec Don't log context or full request URI due to security concerns
These lines may contain information that cannot be safely logged to
disk. Only deal with known parameters, also bump to V(2) to be
consistent with other logging.

Kubernetes-commit: f6300555f4c105f60c5a4cb0a0cdfc01899b833d
2017-03-18 19:56:08 +00:00
Wojciech Tyczynski 63e29dca6f Use new runtime.Object <-> map[string]interface{} converter 2017-02-27 15:10:34 -05:00
nikhiljindal 6863c37d24 Update REST Handler to return 202 for cascading deletion 2017-02-27 15:10:33 -05:00
nikhiljindal fee1f0dd8f Updating the registry to return whether the resource was immediately deleted 2017-02-27 15:10:33 -05:00