Clayton Coleman
1d592e4c28
Unversioned types should not use ambiguous go-int
...
All external types that are not int64 are now marked as int32,
including
IntOrString. Prober is now int32 (43 years should be enough of an initial
probe time for anyone).
Did not change the metadata fields for now.
2015-11-26 11:45:25 -05:00
Wojciech Tyczynski
b6ef62af24
Use unversioned.ListOptions in clients.
2015-11-24 16:52:09 +01:00
deads2k
bf983e942c
use GroupVersion in APIGroupVersion for api installer
2015-11-16 07:42:00 -05:00
David Eads
486103d887
Revert "use GroupVersion in APIGroupVersion for api installer"
2015-11-13 12:55:08 -05:00
deads2k
3c725f17ea
use GroupVersion in APIGroupVersion for api installer
2015-11-13 09:00:04 -05:00
Jordan Liggitt
3bc4abb9aa
Add TypeMeta to discovery response objects
2015-10-27 10:27:13 -04:00
deads2k
6fbb3f4b6e
add nonResourceURL detection
2015-10-20 16:23:30 -04:00
eulerzgy
f8f9afb874
alias local packagename for pkg/util/errors
2015-10-18 09:37:46 +08:00
k8s-merge-robot
2dec0826f7
Merge pull request #15351 from caesarxuchao/fix-14584-1
...
Auto commit by PR queue bot
2015-10-13 02:19:43 -07:00
Chao Xu
7817c2312c
fix rebase
2015-10-12 13:48:14 -07:00
Chao Xu
e3d984be27
run grep-sed
2015-10-12 13:33:13 -07:00
Chao Xu
cbb3deb182
run goimports
2015-10-12 13:31:45 -07:00
Chao Xu
50a2c4c643
grep-sed
2015-10-12 13:31:45 -07:00
Jordan Liggitt
1043126135
Refactor SSH tunneling, fix proxy transport TLS/Dial extraction
2015-10-12 11:17:01 -04:00
k8s-merge-robot
02ec1fb33c
Merge pull request #13885 from smarterclayton/websocket_exec
...
Auto commit by PR queue bot
2015-10-10 09:52:01 -07:00
Chao Xu
67f316dd19
apis/experimental->apis/extensions
2015-10-09 15:04:41 -07:00
Clayton Coleman
363b616908
Expose exec and logs via WebSockets
...
Not all clients and systems can support SPDY protocols. This commit adds
support for two new websocket protocols, one to handle streaming of pod
logs from a pod, and the other to allow exec to be tunneled over
websocket.
Browser support for chunked encoding is still poor, and web consoles
that wish to show pod logs may need to make compromises to display the
output. The /pods/<name>/log endpoint now supports websocket upgrade to
the 'binary.k8s.io' subprotocol, which sends chunks of logs as binary to
the client. Messages are written as logs are streamed from the container
daemon, so flushing should be unaffected.
Browser support for raw communication over SDPY is not possible, and
some languages lack libraries for it and HTTP/2. The Kubelet supports
upgrade to WebSocket instead of SPDY, and will multiplex STDOUT/IN/ERR
over websockets by prepending each binary message with a single byte
representing the channel (0 for IN, 1 for OUT, and 2 for ERR). Because
framing on WebSockets suffers from head-of-line blocking, clients and
other server code should ensure that no particular stream blocks. An
alternative subprotocol 'base64.channel.k8s.io' base64 encodes the body
and uses '0'-'9' to represent the channel for ease of use in browsers.
2015-10-09 14:33:40 -04:00
k8s-merge-robot
f5adbb7e12
Merge pull request #14926 from caesarxuchao/fix-discovery-1
...
Auto commit by PR queue bot
2015-10-02 06:39:44 -07:00
Chao Xu
4927cec3be
fix groups exposes at apis/
2015-10-01 18:32:42 -07:00
deads2k
df870cf36a
remove Kind from APIRequestInfo
2015-09-30 09:46:22 -04:00
deads2k
dc8d0de70b
update APIRequestInfo for APIGroup
2015-09-30 09:45:10 -04:00
Brendan Burns
8998219686
Add a method for encoding directly to a io.Writer and use it for HTTPx
2015-09-24 15:52:09 -07:00
Chao Xu
1278771b34
let apiserver support api discovery
2015-09-21 12:20:24 -07:00
k8s-merge-robot
79bc252163
Merge pull request #13525 from pweil-/register-to-existing
...
Auto commit by PR queue bot
2015-09-15 00:22:56 -07:00
Paul Weil
3c90d3a5ef
allow installing rest to existing web service
2015-09-14 16:34:11 -04:00
Chao Xu
dd6c121d7f
massive changes
2015-09-11 17:31:47 -07: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
Alex Robinson
4b47cb93f3
Reduce the default apiserver timeout back down to 30 seconds.
...
It was originally raised due to slow load balancer creation (#5180 ), but
that was fixed months ago.
2015-09-03 17:50:23 +00:00
Jordan Liggitt
b5e8f7aa41
Recover panics in finishRequest, write correct API response
2015-08-31 14:55:18 -04:00
Mike Danese
8e33cbfa28
rewrite go imports
2015-08-05 17:30:03 -07:00
Tim Hockin
1c3233a1d4
Remove v1beta3
2015-07-23 17:21:27 -07:00
Brendan Burns
25d3834b74
Add monitoring and healthz based on tunnel health.
2015-07-14 14:37:38 -07:00
Wojciech Tyczynski
23d405ad86
Expose /resetMetrics handle in apiserver
2015-06-23 11:12:45 +02:00
Clayton Coleman
debd42a07d
Cleaning up apiserver method signatures
...
A lot of the changes in apiserver could have been represented more
cleanly - this returns the signatures to their older behavior (and
unbreaks OpenShift).
2015-06-18 15:13:41 -04:00
Brendan Burns
b68ddbaf75
Don't pretty-print by default. Saves an allocation (or more) and a copy.
2015-06-08 21:31:58 -07:00
Brendan Burns
30a89968a4
Initial proxy tunnelling.
2015-06-05 14:54:20 -07:00
Prashanth Balasubramanian
448867073d
Pipe minRequestTimeout as an arg to the apiserver
2015-06-03 08:44:14 -07:00
Tim Hockin
9e486be743
Merge pull request #8795 from a-robinson/latency
...
Remove the clientID field from the apiserver request latency metric
2015-05-28 16:55:11 -07:00
CJ Cullen
36d54b2094
Remove /Validate endpoint
2015-05-26 10:49:18 -07:00
Alex Robinson
0339f68273
Remove the clientID field from the apiserver request latency metric.
2015-05-25 20:31:25 -07:00
Prashanth Balasubramanian
8a5445d3db
Randomize apiserver watch timeouts
2015-05-21 20:52:33 -07: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
Filip Grzadkowski
c1c24f645c
Add summary metrics to apiserver for easier debugging and future use in performance tests
2015-04-28 14:27:18 +02:00
Wojciech Tyczynski
159a58ddfb
Merge pull request #7169 from fgrzadkowski/requests_by_clients
...
Break request metrics in apiserver by client.
2015-04-24 13:37:50 +02:00
Filip Grzadkowski
8b755c805b
Break request metrics in apiserver by client.
2015-04-24 13:16:14 +02:00
nikhiljindal
120904df5f
Fixing serviceErrorHandler to use apiVersion specific codec
2015-04-23 14:32:05 -07:00
Fabio Yeon
951a125751
Add "componentstatus" to API for easier cluster health check.
2015-04-17 11:58:23 -07:00
Wojciech Tyczynski
fafcf79d5d
Allow more retries in density test
2015-04-17 12:35:56 +02:00
nikhiljindal
f9132dc572
Registering serviceErrorHandler with go-restful
2015-04-16 14:59:44 -07:00
Cesar Wong
efc7f86baf
Add GetterWithOptions and allow stream flushing
...
In addition to Getter interface, API Installer now supports a
GetterWithOptions interface that takes an additional options object when
getting a resource. A flag is now returned from rest.ResourceStreamer
that indicates whether the streamed response should be
flushed when written back to the client. This is to support log
streaming.
2015-04-07 07:46:30 -04:00
Robert Bailey
f15e34a1bf
Revert "Merge pull request #6309 from GoogleCloudPlatform/revert-6243-kubelet-ssl"
...
This reverts commit 96a0a0d618
, reversing
changes made to 2af9b54147
.
2015-04-02 10:44:37 -07:00
Robert Bailey
32a1c052dc
Revert "Configure the kubelet to use HTTPS"
2015-04-01 13:59:31 -07:00
Robert Bailey
58bc792e68
Configure the master to connect to the kubelet using HTTPS.
2015-04-01 09:09:29 -07:00
Clayton Coleman
870da687d0
Add more extensive tests to apiserver for variations in version
...
Formalize v1beta1 and v1beta3 style APIs in our test cases.
2015-03-27 15:03:58 -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
Clayton Coleman
fc3609fb5b
Allow InputStreams to be returned by requests
...
Add additional metadata to restful services.
2015-03-24 17:25:45 -04:00
Clayton Coleman
d46087db50
Move REST* interfaces into pkg/api/rest
...
Dependency chain is now api -> api/rest -> apiserver. Makes the
interfaces much cleaner to read, and cleans up some inconsistenties
that crept in along the way.
2015-03-23 16:52:21 -04:00
Piotr Szczesniak
ffcf7b1866
Increased default timeout in APIServer to 2 minutes
...
This should for #5431
2015-03-14 06:54:31 +01:00
Clayton Coleman
4b16a87096
Simplify api_installer and setup methods
2015-03-09 14:39:31 -04:00
Daniel Smith
05ea93f985
Merge pull request #5147 from a-robinson/func
...
Re-add the defer statements around the monitor() calls in the apiserver.
2015-03-06 15:31:45 -08:00
Alex Robinson
60f0e9d673
Fix the broken calls to the monitor() by having it take arguments as pointers.
...
This is needed for the changes to various labels from later in the function
to be picked up.
2015-03-06 23:16:44 +00:00
Alex Robinson
0d5fe5d078
Use a prometheus Histogram rather than a Summary for tracking apiserver latency.
2015-03-02 02:15:16 +00:00
nikhiljindal
905a3f7909
Updating the handlers to accept full request path rather than a trimmed one
2015-02-24 00:37:20 -08:00
Jordan Liggitt
083ce268e0
Put user in context, map requests to context above resthandler layer
2015-02-12 20:58:04 -05:00
Clayton Coleman
8f6e3607a9
Add monitoring as a filter
2015-02-11 17:07:23 -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
Alex Robinson
d39262d743
Consolidate the prometheus Counters into a shared CounterVec and remove
...
the "code" label from the latencies SummaryVec.
2015-02-10 22:47:56 +00:00
Alex Robinson
2463cff79c
Basic initial instrumentation of the apiserver. This links in the
...
prometheus library for monitoring, which exports some basic resource
usage metrics by default, like number of goroutines, open file
descriptors, resident and virtual memory, etc. I've also started adding
in request counters and latency histograms, but have only added them to two
of our HTTP handlers. If this looks reasonable, I'll add them to the rest
in a second PR.
2015-02-10 20:44:28 +00:00
deads2k
1c9216a45e
clarify api request information
2015-02-04 13:36:01 -05:00
nikhiljindal
18609e1706
Moving /watch, /proxy and /redirect registration to go-restful
2015-02-03 15:47:48 -08:00
Clayton Coleman
9263a8f627
Remove logging on apiserver startup
...
Now that we return errors on startup there's not much value in the
startup log for anyone except a few developers. Nuke
2015-02-03 00:02:07 -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
nikhiljindal
521728e920
Deleting OperationHandler for handling /operation endpoint on server
2015-01-28 13:13:10 -08: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
deads2k
6e1f680a57
return all errors from RESTStorage registration
2015-01-28 10:31:33 -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
Satnam Singh
358ace610d
Merge pull request #3824 from smarterclayton/allow_panic_and_error_reporting
...
Allow panics and unhandled errors to be sent elsewhere
2015-01-27 13:18:43 -08:00
Brendan Burns
b078889360
Merge pull request #3822 from nikhiljindal/swaggerbug
...
Fixing a bug where Reads() was being called twice on POST routes
2015-01-27 10:01:27 -08:00
Clayton Coleman
19987612bf
Replace code that eats errors with a more consistent reporting
...
In order to allow certain programmer error / unexpected error states
to be captured, replace sections that log and eat errors with a method
that can be centrally replaced. This captures two common error sources,
replication errors, and apiserver code that returns invalid errors.
2015-01-26 20:54:29 -05:00
nikhiljindal
54e5d1f102
Fixing a bug where Reads() was called twice on all POST routes
2015-01-26 17:21:25 -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
Clayton Coleman
90c835af47
The API server setup logging is debug specific, bump above V(4)
...
Reduces some chatter in test suites where we are confident this code
already works. Also removed any logging which is obvious from swagger.
Finally, rolls up InstallREST related errors all the way back to master,
which will glog.Fatalf (coding errors).
2015-01-15 14:25:58 -05:00
nikhiljindal
f8db96b673
Fixing a bug in
...
https://github.com/GoogleCloudPlatform/kubernetes/pull/3404 which broke
swagger-ui.
Swagger-ui requires operation to be defined on all Routes.
2015-01-12 15:20:01 -08:00
Daniel Smith
6f43074143
Merge pull request #3404 from smarterclayton/method_not_allowed
...
Allow RESTStorage objects to not implement methods
2015-01-12 13:21:10 -08:00
Clayton Coleman
d17f75f254
Remove user agent logging (doesn't add significant value)
...
We can reintroduce path/agent logging at a later point, this just clogs
verbose logs.
2015-01-12 13:37:37 -05:00
Clayton Coleman
22c99c98e2
Split RESTStorage into separate interfaces
...
Omit unimplemented interfaces from Swagger
2015-01-12 12:19:45 -05:00
nikhiljindal
7e909ed743
Changes to improve swagger ui.
...
- Separating out index, version and api handlers into independent web
services. Moved the index handler to /welcome, version handler to
/version and the api handler to /api,
2015-01-09 10:56:24 -08:00
derekwaynecarr
a56087cdf8
Remove client from attributes, remove admission control interface, fix-up error codes
2015-01-07 14:42:31 -05:00
derekwaynecarr
520ae3ef27
Implement basic admission control framework
2015-01-07 14:42:31 -05:00
Brendan Burns
5c14fc610b
Merge pull request #3045 from nikhiljindal/setApiVersion
...
Setting apiVersion in restful.WebService
2014-12-19 10:11:15 -08:00
nikhiljindal
cfee8f1355
done
2014-12-18 15:38:09 -08:00
derekwaynecarr
6694a45542
Add doc for {namespace} path param, fixup and verify proxy paths
2014-12-16 15:55:48 -05:00
derekwaynecarr
7cf664439f
Move namespace from query param to path part
2014-12-16 15:55:47 -05:00
Clayton Coleman
b1b255f90a
Prevent infinite loop in apiserver errorJSON
2014-12-12 18:23:17 -05:00
Brendan Burns
59b5546b28
Turn on node level validation, and make the validation set dynamic.
2014-12-10 22:02:45 -08:00
Brian Grant
e18dcb87c4
Format JSON by default. Fixes #2243 .
2014-11-25 23:11:43 +00:00
Tim Hockin
ea960711ff
Clean up error logs.
...
Use %v for errors, tidy some messages, make error messages start lowe-case
(as per go guidelines). Just accumulated nits.
2014-11-21 09:45:26 +08:00