Commit Graph

91 Commits (458eb5284abd6933c620ba8ea383032f225e0885)

Author SHA1 Message Date
Tim Hockin 43ed74748e Clean up and document validation strings
Also add a detail string for Required and Forbidden.  Fix tests.
2015-12-18 09:40:50 -08:00
deads2k 9fda7f1812 update StatusDetails to handle Groups 2015-12-17 09:14:12 -05:00
Clayton Coleman 8f203a28f1 Change runtime.Object signature 2015-12-15 13:36:25 -05:00
k8s-merge-robot 414ebd2ddb Merge pull request #17991 from krousey/errorstatus
Auto commit by PR queue bot
2015-12-14 20:18:19 -08:00
Kris ca7c765f0a Remove APIStatus from the client
Everything that used it also depended on pkg/api/errors. It was a
needless abstraction since it was always an *errors.StatusError.
2015-12-10 13:12:21 -08:00
Tim Hockin 7fb8f60735 Shorten names for better reading 2015-12-10 11:48:19 -08:00
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
Timothy St. Clair a428246960 Abstract the error handling for the storage layer to eliminate the
direct etcd dependency.
2015-12-10 08:06:19 -06: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 55f5e48047 Merge pull request #16628 from caesarxuchao/change-error-type
Auto commit by PR queue bot
2015-11-30 17:21:52 -08:00
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
Chao Xu a4700707b3 change the "too old resource version" error from InternalError to 410 Gone. 2015-11-25 10:27:03 -08:00
k8s-merge-robot e95e3dec42 Merge pull request #17414 from timstclair/apiserver
Auto commit by PR queue bot
2015-11-25 05:28:07 -08:00
Tim St. Clair 20ead45af9 Move etcd_util.go to separate package 2015-11-23 11:32:50 -08:00
Tim Hockin ceee678b29 Rename validation 'New' funcs 2015-11-23 10:01:43 -08:00
Tim Hockin 682f2a5a79 Stronger typing for validation ErrorList 2015-11-23 10:01:43 -08:00
Tim Hockin f8ad75df44 Clarify invalid vs not-supported 2015-11-23 08:07:17 -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 0ff66da346 Move fielderrors into validation 2015-11-22 20:12:20 -08:00
Clayton Coleman 3da15535b6 Provide backpressure to clients when etcd goes down
When etcd is down today we don't specifically handle the error involved,
which means clients get a generic 500 error. This commit adds a formal
error type internally for both WatchExpired and EtcdUnreachable, and
then converts them to api/errors before returning to the client. It also
upgrades the client to retry on any 429 or 5xx error that has a
Retry-After header, instead of just 429.

In combination, this allows the apiserver to exert backpressure on
controllers that are hotlooping.  Picked 2 seconds by default, but we
could potentially ramp that up even further in a future iteration.
2015-11-04 16:05:12 -05:00
eulerzgy f8f9afb874 alias local packagename for pkg/util/errors 2015-10-18 09:37:46 +08:00
Kris f4ad00d9ae Moving Status object to a common package 2015-09-17 14:09:53 -07:00
Veres Lajos 9f77e49109 typofix - https://github.com/vlajos/misspell_fixer 2015-08-08 22:31:48 +01:00
Mike Danese 8e33cbfa28 rewrite go imports 2015-08-05 17:30:03 -07:00
Wojciech Tyczynski 3cbbe72f9f Move etcd storage to pkg/storage/etcd 2015-07-30 15:42:06 +02:00
Mike Danese db179e4cf4 Merge pull request #10346 from jhadvig/comment_fix
Fix NewNotFound method name in comments
2015-07-24 08:08:57 -07:00
nikhiljindal 1517b66001 Updating an error to apierror 2015-07-15 16:43:59 -07:00
jhadvig 7df1d33204 Fix NewNotFound method name in comments 2015-07-02 12:41:12 +02:00
nikhiljindal d82d5d11a7 Revert "Merge pull request #10246 from nikhiljindal"
This reverts commit a902a2f014, reversing
changes made to 7df8d76a93.
2015-07-01 11:07:18 -07:00
CJ Cullen 12553c9b91 Fix errors test 2015-06-30 16:43:33 -07:00
Zach Loafman a902a2f014 Merge pull request #10246 from nikhiljindal/minionPrefix
Return api/errors instead of raw etcd errors
2015-06-30 15:47:58 -07:00
Tim Hockin 15766bfbbc Don't repeat field name in errors 2015-06-30 11:58:21 -07:00
nikhiljindal 4b7f7ce535 Dont return raw etcd errors 2015-06-29 16:18:46 -07:00
nikhiljindal 3b3ee0ed77 Improving an error message 2015-06-25 13:08:09 -07:00
nikhiljindal 7cc50448e3 Updating StatusDetails.ID to Name in internal API 2015-06-05 07:17:02 -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
nikhiljindal f9132dc572 Registering serviceErrorHandler with go-restful 2015-04-16 14:59:44 -07:00
Jordan Liggitt dde8c7156b Add a more descriptive message for 405 errors 2015-04-15 11:28:12 -04:00
Clayton Coleman 323a44e54a Make kubectl errors even more user-friendly
Omit glog prefix when v < 2, show multiline errors for configuration
problems, add new generic messages for server errors that hide some
complexity that is not relevant for users.
2015-04-02 01:40:15 -04:00
Clayton Coleman 1233843a1d Add a new generic error that can indicate a server response was underspecified
Allows clients to distinguish between a server that returns us an error we
recognize, and errors that are generic HTTP (due to an intervening proxy)
2015-04-02 01:39:57 -04:00
Clayton Coleman aa44d29d10 Updated documentation and adjusted field names 2015-03-27 17:08:59 -04:00
Clayton Coleman 30358e8b04 Add more specific error handling and handle generic errors more effectively
The client library should type more generic errors from the server.
2015-03-26 17:30:13 -04:00
Clayton Coleman 65425f690c Move field errors to pkg/util/fielderrors
Allows pkg/api to take a reference to labels.Selector and fields.Selector
2015-03-22 17:43:34 -04:00
gmarek a3b137ce8e Cleanup of validation.go 2015-03-18 08:59:35 +01:00
Brendan Burns f505a33998 Differentiate between server error messages and client error messages in kubectl 2015-03-07 11:39:23 +01:00
gmarek 726a5af075 Loosen label and annotation validation and related tests 2015-03-06 08:23:22 +01: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 c24f4a24b4 Rename TryAgainLater status code to ServerTimeout 2015-02-12 15:01:12 -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